8791 sujets

Développement web côté serveur, CMS

Bonjour à tous,

voici mon problème. Je souhaite sur une de mes pages, faire 2 requetes mysql, ceci pour des raisons de clarté.
J'ai donc fait mes 2 requetes mais j'ai un message d'erreur qui me dit pour la seconde requet "Call to undefined function mysql_querry() in …".

Par contre, si de mes 2 requetes je n'en fait plus qu'une seule, je n'ai aucun problème. Je n'y comprend rien puisque c'est exactement le même code qui est utilisé quand je fusionne les 2 requetes.

Deplus, si je ne me trompe pas, on peut faire plusieurs requetes sur une meme page?

Voici mon code avec mes 2 requetes:


$sql_fiche		=mysql_query("SELECT vehicule.id_vehicule, vehicule.code_marque, vehicule.code_model, vehicule.code_carburant, vehicule.code_annee, vehicule.kilometre, vehicule.prix_vente_TVA, vehicule.code_type, DATE_FORMAT(vehicule.immatriculation, '%d/%m/%Y') as immatriculation, vehicule.cm3,vehicule.code_trans,
		marque.code_marque, marque.marque, 
		model.code_model, model.model,
		type.type,type.code_type,
		carburant.code_carburant, carburant.carburant,
		images.id_vehicule, images.chemin_image,
		transmission.code_trans, transmission.transmission,
		options.boite_vitesse, options.puis_fiscale, options.airbag_cond
		FROM vehicule 
		INNER JOIN marque ON vehicule.code_marque=marque.code_marque 
		INNER JOIN model ON vehicule.code_model=model.code_model 
		INNER JOIN type ON vehicule.code_type=type.code_type
		INNER JOIN carburant ON vehicule.code_carburant=carburant.code_carburant
		INNER JOIN images ON vehicule.id_vehicule=images.id_vehicule
		INNER JOIN transmission ON vehicule.code_trans=transmission.code_trans
		INNER JOIN options ON vehicule.id_vehicule=options.id_vehicule
		WHERE vehicule.id_vehicule='$selected_vehicule'");
	$donnees_fiche	=mysql_fetch_assoc($sql_fiche);
	?>
	<div id="contenu">
	<?php $previous_page=$_SERVER['HTTP_REFERER']; ?>
	<p id="return"><a href='<?php echo $previous_page; ?>'>Retour à la page précédente</a></p>			
		<div class="cadre-fiche">
			<div id="cadre-fiche-resume">
			<table class="table-vehicule">
					<th class="black" colspan="2">Véhicule n° <?php echo $selected_vehicule ?> - <?php echo $donnees_fiche['marque']; echo '<span> - </span>'.$donnees_fiche['model']; ?></th>
					<!--
					<tr>
						<td class="descriptif-tableau" width="30%">Modèle :</td>
						<td width="70%"><span><?php echo $donnees_fiche['marque']; ?></span></td>
					</tr>-->
					<tr>
						<td class="descriptif-tableau" width="30%">Type :</td>
						<td width="70%"><span><?php echo $donnees_fiche['type']; ?></span></td>
					</tr>
					<tr>
						<td class="descriptif-tableau" width="30%">Carburant :</td>
						<td width="70%"><span><?php echo $donnees_fiche['carburant']; ?></span></td>
					</tr>
					<tr>
						<td class="descriptif-tableau" width="30%">Cylindrée :</td>
						<td width="65%"><span><?php echo $donnees_fiche['cm3']; ?> cm3</span></td>
					</tr>
					<tr>
						<td class="descriptif-tableau" width="30%">Transmission :</td>
						<td width="65%"><span><?php echo $donnees_fiche['transmission']; ?></span></td>
					</tr>
					<tr>
						<td class="descriptif-tableau" width="30%">Kilométrage :</td>
						<td width="65%"><span><?php echo number_format($donnees_fiche['kilometre'], 0, ',','.'); ?> Km</span></td>
					</tr>
					<tr>
						<td class="descriptif-tableau" width="30%">Immatriculation :</td>
						<td width="65%"><span><?php echo $donnees_fiche['immatriculation']; ?></span></td>
					</tr>
					<tr>
						<td class="descriptif-tableau" width="30%">Prix de vente : </td>
						<td width="65%"><span id="prix"><?php echo number_format($donnees_fiche['prix_vente_TVA'], 2, ',',' '); ?> €</span></td>
					</tr>
				</table>
				
			</div><!-- Fin de #cadre-fiche-resume -->
			<div id="cadre-fiche-photo">
				<img src="<?php echo $donnees_fiche['chemin_image']; ?>" alt="v796p3" width="236" height="212" />
			</div><!-- Fin de #cadre-fiche-photo -->
					<div id="contact-vendeur">Contacter le vendeur</div>
			<div class="fiche-description">
			<?php
			$sql_options=mysql_querry("SELECT vehicule.id_vehicule,options.boite_vitesse, options.puis_fiscale, options.airbag_cond
		FROM vehicule INNER JOIN options ON vehicule.id_vehicule=options.id_vehicule WHERE options.id_vehicule='.$selected_vehicule.'");
			$donnees_options=mysql_fetch_assoc($sql_options);
			?>
				<h3 id="black">Description du Véhicule</h3>
					<table id="table-desc-moteur">
						<th colspan="2" align="left">Moteur</th>
						<tr>
						<td class="black" width="40%">Boîte de vitesse: </td>
						<td class="black" width="60%"><?php echo $donnees_options['boite_vitesse']; ?></td>
						</tr>
						<tr>
						<td class="black" width="40%">Puissance fiscale:</td>
						<td class="black" width="60%"><?php echo $donnees_options['puis_fiscale']; ?></td>
						</tr>
						<tr>
						<td class="black" width="40%">Nombre d'airbags :</td>
						<td class="black" width="60%"><?php echo $donnees_options['airbag_cond']; ?></td>
						</tr>
						<tr>
						<td class="black" width="40%">Transmission :</td>
						<td class="black" width="60%">OUI</td>
						</tr>
						</tr>
						<tr>
						<td class="black" width="40%">Nombre de cylindres : </td>
						<td class="black" width="60%">1</td>
						</tr>
						<tr>
						<td class="black" width="40%">Emission CO2 : </td>
						<td class="black" width="60%">1</td>
						</tr>
					</table>



Est-ce que je fais une erreur?

Merci de m'avoir lu !
Modifié par paintbox (06 Oct 2010 - 22:50)
Bonjour,

le message est pourtant clair :
paintbox a écrit :
"Call to undefined function mysql_querry() in …".

mysql_query
Merci pour ton aide… mais heu, non pas si évident pour moi.
Visiblement je fais appel à une fonction non définie? J'avoue que je ne comprends pas. Pq est-ce que la requette fonctionne quand je l'inclus dans ma première requete?

Merci
Oups… oui effectivement. A force d etre dedans on ne voit plus les erreurs les plus évidentes.

Malgré cela, aucune donnée pour cette requete n'apparait alors qu'il y a des données dans la bd.
Assures toi d'abord que ta requête SQL retourne bien ce que tu attends en la testant dans phpMyAdmin apr exemple.

En revanche, la fonction mysql_fetch_assoc() doit s'utiliser dans une boucle while sinon tu ne lira que le premier résultat retourné.
while($ligne = mysql_fetch_assoc($results))
{
    var_dump($ligne);
}
Hello Moust,

ma requete est correcte, je l'ai testé dans phpMyAdmin.

De plus si je test ma requete (celle qui pose problème) sur une autre page (donc sans la requete 1) cela fonctionne. Dès que j'essaye de mettre les 2 requetes sur la meme page. La seconde requete ne donne rien.
Hello,

Dans ta second requête, ta condition WHERE se positionne sur la table "option" alors que la table requetée est "vehicule".

Essaie de placer ta condition sur vehicule.id_vehicule, pour voir ...
Bonsor MAD'S

merci pour ton aide. Il semblerait que le problème provienne de mon $selected_vehicule qui récupère la valeur en $_GET. En fait, mes 2 requetes fonctionnent très bien quand je mets directement une valeur dans mes 2 requetes (comme ceci… WHERE vehicule.id_vehicule='1'). Mais dès que j'attribue une valeur à ma variable $selected_vehicule et que j'utilise cette valeur dans mes requetes, ça ne fonctionne plus.

Etrange… quelqu'un aurait-il une idée?

Merci