Nom des requetes

Eléphanteau du PHP | 41 Messages

05 mars 2006, 19:59

Salut,

J'ai une petite question...

Si je dois faire plusieurs requetes sur une page;

ex d'une requete:

$sql="SELECT * FROM videos_com where IDVIDEO=$idvideo";
$com1=mysql_query($sql);

Si je veux en faire une 2eme; devrais-je changer la variable "$com1" ???

Ca me perturbe trop !

:? :?

J'attends votre reponse avec impatiente.

Merci d'avance,

Gaetan

Avatar du membre
ViPHP
ViPHP | 3008 Messages

06 mars 2006, 10:57

Logiquement si tu fais deux requêtes tu dois le changer :
$sql="SELECT * FROM videos_com where IDVIDEO=$idvideo"; 
$com=mysql_query($sql);

$sql1="SELECT * FROM xxx where blabla"; 
$com1=mysql_query($sql1);
Sinon il y aura un conflit au niveau des deux requêtes.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

06 mars 2006, 17:25

Boah, ce n'est pas une obligation non plus... le seul truc, c'est qu'effectivment si tu utilises le même nom, il va écraser le contenu précédent, mais cela peut très bien se faire si tes traitements sont indépendants.
// Ceci marche très bien :
$sql="SELECT * FROM videos_com where IDVIDEO=$idvideo"; 
$com=mysql_query($sql); 
... // tout le traitement qui va bien sur $com

$sql="SELECT * FROM xxx where blabla"; 
$com=mysql_query($sql); 
... // tout le traitement qui va bien sur ton nouveau $com


// En revanche si les deux sont liés ou imbriqués, alors il te faut changer de nom pour préserver le premier
$sql="SELECT * FROM videos_com where IDVIDEO=$idvideo"; 
$com=mysql_query($sql); 
while ($row = mysql_fetch_array($com)) {
  $sql="SELECT * FROM xxx where blabla"; // tu peux écraser $sql, il a déjà été exécuté et ne sert donc plus
  $com1=mysql_query($sql); // par contre si tu écrases $com, la boucle while va partir en vrille :)
  ... // tout le traitement qui va bien sur ton $com1 et éventuellement ton $row
}