aide script news

Répondre
Meeper
le 23/10/2006 à 19:44
Meeper
HUM HUM HUM smiley heuu j'avais vu juste donc LOL avec cette histoire de nom de bd et de table pour une fois que je peux aider
Konoro
le 25/10/2006 à 07:39
Konoro
ok, c'est fait.

je rencontre donc un second probleme, car j'aimerais faire un systeme de suppression de news (et d'édition) mais je n'ai aucune idée comment proceder ; je n'arrive pas a bien cerner comment marche la relation sql/php

a ce que j'ai compris mes news sont enregistrée dans la base de donnée, puis retraduite par la page news.
donc il faudrait les extraire puis les modifier...

mais je ne sais pas comment faire ><


merci.
Konoro
le 26/10/2006 à 19:21
Konoro
il y a encore pas mal de choses que je ne comprend pas :

1) le $idnews n'est pas défini ? si non comment ?
2) je ne comprend pas trop ou mettre ces liens, sur une nouvelle page ? si oui, comment automatiser l'affichage de supprimer/modifier sur cette page (pour rendre les modifications innacessibles de l'extérieur)

merci.
Keika
le 26/10/2006 à 19:34
Keika
yop,

alors voila comment moi j'ai fais pour les modif/effacements

tu prends les cours de LA GLOBULE et tu t'appercois de deux choses:

pour modifier les infos dans une table faut utiliser cette syntaxe:

"UPDATE texte_news FROM news WHERE id='.$_POST['id'].'"


c'est pas bien complique, faut juste que tu envois l'id via ton formulaire, pour ca je te conseille de creer un input avec le type hidden et la valeur de ton id par news, chose simple aussi ca rentre dans ta boucle while quand tu appelles tes news depuis la bdd


ensuite pour effacer c'est encore plus simple:

"DELETE texte_news FROM news WHERE id='.$_POST['id'].'"


pareil rien de bien sorcier... tu peux meme reutiliser ton code qui t'as servis pour la modification...

enjoy ^_^

K.
Le PHP --> C'est dur !
Konoro
le 26/10/2006 à 20:38
Konoro
"un imput de type hidden"

tu parlerais en chinois que ca reviendrait au meme pour moi ^_^

n'oubliez-pas que je suis un "noob" du php et que si vous voulez que je comprenne bien tout faut m'expliquer en detail x)
i M@N
le 27/10/2006 à 09:57
i M@N
Hello !

il y a encore pas mal de choses que je ne comprend pas :
1) le $idnews n'est pas défini ? si non comment ?
2) je ne comprend pas trop ou mettre ces liens, sur une nouvelle page ? si oui, comment automatiser l'affichage de supprimer/modifier sur cette page (pour rendre les modifications innacessibles de l'extérieur)

1) si, c'est ton lien (delete/update_news?id=1) puis le
<?php 
if (isset($_GET['id'])) $id = $_GET['id']; else $id = "";
?>
qui le définissent.

2) quand tu récupères tes données à l'affichage de tes news, tu récupères aussi le champ id 'autoincrément) et tu crées le lien :
<?php
/*...le début du code du script de news...*/
/*lancement de la requête*/
$sql = 'SELECT auteur, titre, date, texte_news FROM news ORDER BY date DESC';
/*on lance la requête (mysql_query)
et on impose un message d'erreur
si la requête ne se passe pas bien (or die) */
$req = mysql_query($sql) or die('Erreur SQL !'.$sql.''.mysql_error());
/*on va scanner tous les tuples un par un*/
while ($data = mysql_fetch_array($req)) {
/*on récupère les valeurs qui nous intéressent*/
$id_news = $data['id'];
$auteur = $data['auteur'];
$titre = $data['titre'];
$texte_news = $data['texte_news'];
/*on décompose la date*/
sscanf($data['date'], "%4s-%2s-%2s %2s:%2s:%2s", $an, $mois, $jour, $heure, $min, $sec);
/*on affiche les résultats*/
echo 'News de : ' , stripslashes(htmlentities(trim($auteur))) , '';
echo 'Titre : ' , stripslashes(htmlentities(trim($titre))) , '';
echo 'Postée le : ' , $jour , '/' , $mois , '/' , $an , ' à ' , $heure , ':' , $min , ':' , $sec , '';
echo 'News : ' , nl2br(stripslashes(htmlentities(trim($texte_news)))) , '';
/*et là on ajoute un lien pour modifier et un pour effacer*/
echo '<a href="./update_news.php?id='.$id_news.'>mettre à jour</a>';
echo '<a href="./delete_news.php?id='.$id_news.'>effacer</a>';
}
/*on libère l'espace mémoire alloué pour cette requête*/
mysql_free_result ($req);
/*...la fin du code du script de news...*/
?>

Maintenant cette solution n'est pas tout à fait satisfaisante parce que les liens pour modifier / effacer sont visibles de tous ... il faut que tu apprennes les sessions pour faire un lien qui n'apparait que pour un administrateur par exemple qui aurait une variable de session "admin" = 1 ...

Enfin
"un imput de type hidden"
tu parlerais en chinois que ca reviendrait au meme pour moi ^_^
n'oubliez-pas que je suis un "noob" du php et que si vous voulez que je comprenne bien tout faut m'expliquer en detail x)
N'oublie pas que google est ton ami et que t'as aussi le droit de chercher. input type hidden c'est du HTML de base.

@+...
One Love, One Heart, One Unity.
Keika
le 27/10/2006 à 10:19
Keika
justement un "noob" ne devrait pas commencer par un script de news. C'est assez complique tout de meme quand on commence juste. Parceque faut jouer avec le HTML (pour les formulaires), que tu n'as pas l'air de maitriser...
et aussi les bdd, pour inserer les news, les modifier, les effacer

et enfin tu as du php a gerer avec des if(isset) et des variables...

Je pense que pour commencer et t'entrainer tu ferais mieux d'essayer de gerer seulement des formulaires, et des variables. deja pour voir comment ca reagit. Ensuite tu pourras essayer d'inserer des donnes dans ta base puis de les resortir.

Et apres tout ca et un peu plus d'experience, tu pourras faire un script de news.

Bye
Le PHP --> C'est dur !
i M@N
le 27/10/2006 à 13:50
i M@N
Reuh ...

@ Keika : chui pas trop d'accord, il faut bien commencer par quelque chose ... en plus ce script est assez simple et permet de voir pusieurs fonctions de base de PHP / SQL : récupérations de variables issues de $_GET, création / interrogation de base de données SQL, affichage de données ...

Maintenant c'est clair qu'il faut pas avoir peur de tester juste des bouts de scripts et que se lancer en PHP sans connaître le HTML c'est un peu présomptueux ... puis faut vouloir apprendre et savoir chercher aussi.

Après pour les sessions y'a un comment faire un espace membre qui explique assez bien le système. Puis y'a la doc. smiley

@+...
One Love, One Heart, One Unity.
Konoro
le 27/10/2006 à 16:17
Konoro
(je maitrise "reltivement" bien le HTML et le CSS)

donc :

- j'ai enfin compris l'idée générale du script.
je vais donc essayer en me basant sur ce qu'il y a dans le script pour envoyer en meme temps que la news un lien sur une autre page innaccesible du grand public avec les liens pour editer la news.
- j'ai été voir le système de sessions, ca a l'air un peu compliqué, on verra quand j'aurais déja réussi a faire ce que je veux faire.

Merci beaucoup pour toute l'aide apportée ;)
Répondre
LoadingChargement en cours