Utilisation de variables PHP dans requête SQL

Résolu
ReddInTheAbyss Messages postés 30 Date d'inscription   Statut Membre Dernière intervention   -  
Freedomsoul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   -
Salut !

J'ai un problème pour l'utilisation d'une variable Php dans une requête Mysql...
Après quelques recherches j'ai un code qui ressemble à ça :


<?php

	$idvilledest1 = mysql_query("SELECT ID_VILLE FROM VILLE AS idvilledest WHERE NOM_VILLE = ' ".$dest_ville['NOM_VILLE']." ' ");
	$idvilledest2 = mysql_fetch_array($idvilledest1);
	$idvilledest = $idvilledest2['idvilledest'];
?>

        <div class="coloc-text-14">1. <?php echo $idvilledest ?></div>



Bon, alors la variable php est évidemment $dest_ville['NOM_VILLE'].
La variable marche bien en dehors des requêtes, je peux l'afficher, du coup je vois pas pourquoi la requête m'affiche rien dans l'echo...

Votre aide est bienvenue ! Merci, bonne journée.

A voir également:

3 réponses

Freedomsoul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   97
 
c'est simple, regarde plus attentivement ton where :

"..... WHERE NOM_VILLE = ' ".$dest_ville['NOM_VILLE']." ' "

il y a des espaces après / avant tes simples quotes

donc il va te chercher
' nom_ville '
et pas
'nom_ville'

:)
1
ReddInTheAbyss Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
Merci !
... Mais je viens d'essayer et ça change rien héhé.
0
maka54 Messages postés 698 Date d'inscription   Statut Membre Dernière intervention   80
 
ta requete est fausse

pour commencer Freedomsoul a raison les espaces sont en trop

ensuite tu fais :

$idvilledest2 = mysql_fetch_array($idvilledest1);
$idvilledest = $idvilledest2['idvilledest'];


mais $idvilledest2['idvilledest'] n'existe pas

soit tu fais $idvilledest2['ID_VILLE']

soit tu mets ton alias sur le champ et non pas sur ta table

SELECT ID_VILLE AS idvilledest FROM VILLE
1
ReddInTheAbyss Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
Yes ! ça marche. Merci à toi et à Freedomsoul !
0
Freedomsoul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   97
 
tu peux renvoyer ta requete ? :)
0
ReddInTheAbyss Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
Ouep !
Maintenant ça donne ça :

<?php
$idvilledest1 = mysql_query("SELECT ID_VILLE FROM VILLE AS idvilledest WHERE NOM_VILLE = '".$dest_ville['NOM_VILLE']."' ");
		$idvilledest2 = mysql_fetch_array($idvilledest1);
		$idvilledest = $idvilledest2['idvilledest'];
		
		?>
        <div class="coloc-text-14">1. <?php echo $idvilledest ?></div>

0
Freedomsoul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   97
 
Ok, et dans ta base de données, les valeurs ne contiennent pas d'espace ou autre avant / après ?
par que si ta variable contient bien une valeur qui est dans ta base, y'a pas de raison que ça ne fonctionne pas

Et pas d'erreur sql?
0
ReddInTheAbyss Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
Non, tout ça est bon, mais comme l'a dit maka54 je mettais le "AS idvilledest" après la table et pas après le champ. Du coup maintenant ça marche ! Merci encore.
0
Freedomsoul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   97
 
Haaaa j'y ai pensé ><'

ça me semblait bizarre aussi ! Bon... tant mieux ^^
Mais c'est curieux qu'il ne t'affichait pas d'erreur du à ça...
0