[MySQL] gros probleme de requêtes

gros probleme de requêtes [MySQL] - SQL/NoSQL - Programmation

Marsh Posté le 29-07-2004 à 19:43:47    

Bonjour,  
C'est tout bête. j'ai deux requêtes. Je veux utiliser le résultat d'une premiere requete qui me servira pour la seconde requête:

Code :
  1. $req1=mysql_query("SELECT prenom FROM users WHERE login='bill'" );
  2. $fetch1=mysql_fetch_array($req1);
  3. $arg="$fetch1[prenom]";
  4. echo"$arg";//renvoie 'robert'
  5. $req2=mysql_query("SELECT url FROM smileys WHERE name='$arg'" );
  6. $fetch2=mysql_fetch_array($req2);
  7. echo"$fetch2[url]";//renvoie rien


 
 
$arg contient bien une valeur 'robert' donc la premiere requete fonctionne mais $fetch[url] est vide donc la seconde requete ne marche pas.
 
PAR CONTRE, quand j'attribue moi meme la valeur 'robert' à la variable $arg, la meme renvoyée par la premiere requete ca marche:
 

Code :
  1. $req1=mysql_query("SELECT prenom FROM users WHERE login='bill'" );
  2. $fetch1=mysql_fetch_array($req1);
  3. $arg="robert";
  4. echo"$arg";
  5. $req2=mysql_query("SELECT url FROM smileys WHERE name='$arg'" );
  6. $fetch2=mysql_fetch_array($req2);
  7. echo"$fetch2[url]";


 
Donc je n'y comprends rien ca fait 4 jours que je suis sur ca, svp aidez moi merci beaucoup.

Reply

Marsh Posté le 29-07-2004 à 19:43:47   

Reply

Marsh Posté le 29-07-2004 à 19:54:10    

SELECT smileys.url AS url FROM users,smileys WHERE (users.login='bill') AND (smiley.name=users.prenom)
 
 
normalement ça devrait donner qqchose... (ma syntaxe est ptet pas top top...)


Message édité par TriadPtale le 29-07-2004 à 19:58:59
Reply

Marsh Posté le 29-07-2004 à 21:43:31    

TriadPtale a écrit :

SELECT smileys.url AS url FROM users,smileys WHERE (users.login='bill') AND (smiley.name=users.prenom)
 
 
normalement ça devrait donner qqchose... (ma syntaxe est ptet pas top top...)


 
J'ai essayé mais sans résultats. Pour l'instant on va faire simple, donnez moi une réponse avec les deux étapes. merci de votre aide.

Reply

Marsh Posté le 29-07-2004 à 21:47:42    

La requête de TriadPtale est bonne. si tu n'as pas de résultat, c'est que les deux champs en question n'ont pas la mêmes valeurs.
 
Y'a pas plus simple que ça requête, c'est une bête jointure entre deux table.


Message édité par Arjuna le 29-07-2004 à 21:47:53
Reply

Marsh Posté le 29-07-2004 à 22:07:34    

Arjuna a écrit :

La requête de TriadPtale est bonne. si tu n'as pas de résultat, c'est que les deux champs en question n'ont pas la mêmes valeurs.
 
Y'a pas plus simple que ça requête, c'est une bête jointure entre deux table.


 
le probleme c'est pas le fait que les deux champs en question n'ont pas les memes valeurs puisque la premiere requete renvoie la bonne valeur. Ce que je ne comprends pas c'est que pour que ca marche c'est a moi d'attribuer bonne valeur directement (cf mon exemple)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed