Index du Forum » » Le coin des codeurs

Auteur

php/mysql
Anonyme
19853  

  Posté : 30-06-2003 11:00

Citation : "30-06-2003 10:32, VV a écrit :
Ta requete de mise à jour me parait pas très catholique...
ça me parait bizzarre de faire une jointure sur un update (je suis pas sur que update permette de modifier plusieur tables en une seule requete, surtout que ds ta requete tu mets "update news" alors que tu essaie de modifier news ET theme...).
Si t'as une table thème, logiquement, c'est qu'un enregistrement de cette table peut correspondre a (0,N) enregistrements de la table News (sinon ça sert a rien d'avoir une table theme, tu pourrais très bien mettre le nom du thème directement dans la table News).
Donc ta table theme est censée avoir une ligne par thème possible existant, et grâce à ta clé referentielle dans News, tu peux retrouver auquel de ces thèmes appartient ta nouvelle.
=>Donc, si tu changes le thème d'une nouvelle, tu n'as qu'a changer la valeur de la clé referentielle id_thème dans News.
Toi, ce que tu essaie de faire, c'est de changer le nom du thème, cela signifie que plusieurs news ne peuvent pas correspondre à la meme ligne de thème, sinon tu changes le nom du theme pour toutes ces news.
Moi, je le ferais plutot comme ça :

-Soit 2 news differentes ne peuvent pas avoir le même theme, et à ce moment là je ne mettrais pas de table theme, je stockerais directement le nom du theme dans la table News.

-Soit plsrs news peuvent avoir le meme theme, et la je mettrais une ligne par theme existant dans la table theme, et quand ja change le theme d'une news, je ne change que la valeur de la clé referentielle :
tu récuperes le nouveau numéro de theme dans une variable (via ton formulaire+ une ou deux lignes de php) ex : $notheme
puis tu fais ton update :

$requete="update news set titre='$titre',date='$date',id_theme='$notheme', contenu='$contenu'";
$requete.="where news.Id_news=$modifier";
$resultat=mysql_query($requete,$link);

Et voila, ton thème est changé "
----------

cela ne marche toujours pas peux tu me donner la requete complète en regardant mes codes merci d'avance.



Cet article provient de NPDS

http://www.npds.org/viewtopic.php?topic=6366&forum=5