erreur en mysql
<?php
if($iden=mysql_connect("127.0.0.1","root","helasfar")){
if($ide=mysql_select_db("location")){
echo "succés de connection";
}
else{
die("echec de connexion de la base");
}
mysql_close($iden);
}else{
die("echec de connxion de serveur de base de donnée");
mysql_close($iden);
}
$marque = $_POST['marque'];
$requet="SELECT * FROM voiture WHERE nom = :marque"
if($result=mysql_query($requet))
{
while($ligne=mysql_fetch_row($result)){
$id=$ligne[0];
$name=$ligne[1];
$prix=$ligne[5];
echo "$id-$name, $prix <br />";
}
}else{
echo "Marque inexistante veuillez vérifier la liste des voitures.";
}
mysql_close($iden);
?>
Réponses apportées à cette discussion
Helasfar, je suis habituellement toujours disposé à aider ceux qui le demandent, à la condition expresse toutefois que les demandeurs ne se moquent pas des gens.
Si ton code ne fonctionne pas, tu as probablement des messages d'erreur... ou pas... mais je ne testerai pas ce code pour le découvrir, je n'ai pas le temps pour ça. Donc, commence par formuler une question en indiquant ce qui ne fonctionne pas, en montrant les messages d'erreur affichés s'il y en a, ou bien leur absence le cas échéant. Partant de là, il sera possible de t'indiquer le chemin pour trouver la solution.
Bonjour,je m'excuse j'ai pensé que j'ai écris l'erreur ce ci :
Parse error: syntax error, unexpected T_IF in C:\wamp\www\tests\affiche.php on line 16
avant d'ajouter la drrniere close dans le else la connexion est reussit mais ine erreure dans la commande mysql_query,si vous pouvez aidez moi pour trouvez la solution car je suis debutante et j'ai un projet à faire et la date de validation est proche je m'excuse fortement pour ne pas bien formuler la question et merci d'avance :)
Erreur classique : il convient de regarder en général la ligne précédente : et immédiatement on peut observer que l'instruction n'est pas terminée par un « ; » comme il faudrait.
Et plus globalement, un petit conseil : tant qu'à débuter, je recommande vivement de faire preuve de rigueur dans la manière d'écrire le code. Par exemple, utiliser une bonne indentation (décallage des débuts de lignes selon les accolades).
Autre point : les assignation dans les conditions : même si ça fonctionne, il faut éviter de faire « while(x = y) » ou « if(x = y) » : while ou if attendent la vérification d'une condition, donc on doit utiliser un opérateur de comparaison. Comment faire dans ce cas puisque « if(x == y) » ne serait pas du tout interprété de la même manière : if ou while vont tester une valeur booléenne (true ou false) : Les assignation utilisées ici vont effectivement retourner un booléen. Il faudrait donc faire « while(false !== (x = y)) » ou if(false !== (x = y)) et là ce sera sémantiquement correct.
Ce qui donne pour l'ensemble du code montré plus haut :
<?php
if(false !== ($iden = mysql_connect("127.0.0.1","root","helasfar")))
{
if(false !== ($ide=mysql_select_db("location")))
{
echo "succés de connection";
}
else
{
die("echec de connexion de la base");
}
mysql_close($iden);
}
else
{
die("echec de connxion de serveur de base de donnée");
mysql_close($iden);
}
$marque = $_POST['marque'];
$requet = "SELECT * FROM voiture WHERE nom = :marque";
if(false !== ($result=mysql_query($requet)))
{
while($ligne=mysql_fetch_row($result))
{
$id = $ligne[0];
$name = $ligne[1];
$prix = $ligne[5];
echo $id-$name .", ". $prix ."<br />";
}
}
else
{
echo "Marque inexistante veuillez vérifier la liste des voitures.";
}
mysql_close($iden);
?>
Bon code.