Bonjour,

Un petit problème me barre la route ...
J'ai utilisé plusieurs fois les requêtes et le fetch() mais là, rien ne veux passer.

Je m'explique :
Ma requête ne doit renvoyer qu'une seule valeur (un identifiant) ou rien (mais je la teste dans le cas où elle renvoie une valeur) et j'ai traité ma requête comme je l'ai fait jusqu'à présent avec ->query et fetch ... lorsque je fait des requêtes avec plusieurs valeurs en retour ça fonctionne pourtant bien.

voici mon code PHP :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
$num = $_GET['num'];
$typevoie = $_GET['typevoie'];
$nomvoie = $_GET['nomvoie'];
$ville = $_GET['ville'];
$cp = $_GET['cp'];
$pays = $_GET['pays'];
 
try
{
	$bdd = new PDO('mysql:host=localhost;dbname=mairie_saubens;charset=utf8', 'root', '');
}
catch (Exception $e)
{
	die('Erreur : ' . $e->getMessage());
}
//echo 'type voie : '.$typevoie.' nom voie : '.$nomvoie;
 
$reponse = $bdd->query('SELECT voie_id FROM voie v
		LEFT JOIN typer_voie trv ON trv.voie_voie_id = v.voie_id 
		LEFT JOIN type_voie tv ON tv.typevoie_id = trv.type_voie_typevoie_id
		LEFT JOIN nommer_voie nrv ON nrv.voie_voie_id =  v.voie_id
		LEFT JOIN nom_voie nv ON nv.nomvoie_id = nrv.nom_voie_nomvoie_id
		WHERE typevoie_type = '.$typevoie.'
		AND nomvoie_nom = '.$nomvoie.'');
 
while($donnees = $reponse->fetch())
{
	$voieid = $donnees['voie_id'];
	echo $voieid;  //pour tester
}
Je sais que la requête focntionne bien car je l'ai testée dans PHPmyadmin.
Je sais que les valeur $typevoie et $nomvoie ne sont pas vides et possèdent bien les bonnes valeurs car j'ai fait un echo pour les tester.

En fait, j'obtiens le message d'erreur suivant :
Call to a member function fetch() on boolean
J'ai testé mon code en remplaçant la requête par une requête qui renvoie plusieurs valeurs, il fonctionne bien mais avec cette requête, il ne veux pas alors qu'elle fonctionne dans PHPmyadmin.

Je sais que le fetch() renvoie un tableau, mais je ne pense pas que cela soit important car elle peut bien renvoyer un tableau ne contenant qu'une seule valeur ! non !?!
Merci de bien vouloir m'aider !