Formulaire php

Résolu/Fermé
Utilisateur anonyme - 29 déc. 2009 à 20:10
 Utilisateur anonyme - 29 déc. 2009 à 23:23
Bonjour,

je vient de bricoler un petit code pour quelqu'un du site.
Ironie du sort, le code ne marche pas.

erreur affiché:

Parse error: parse error in C:\wamp\www\Naranja\Glossaire.php on line 11


code:

<form action='glossaire.php' name='glossaire' method='GET'>
<fieldset>
<legend>Chercher un mot</legend>
<input type='text' name='Mot' /><br />
<center>
<input type='submit' name='glossaire' value='Chercher'/><br />
</center>
</fieldset>
</form>
<?php
if (isset($_GET['Mot']){
$Mot = $_GET['Mot'];
$Existence_mot = mysql_fetch_array(mysql_query('SELECT Mot FROM Glossaire WHERE Mot = "'.$Mot.'"'));
if ($Existence_mot['Mot'] == ""){
echo "Mot non trouvé";
}
else{
$Definition = mysql_fetch_array(mysql_query('SELECT Definition FROM Glossaire WHERE Mot = "'.$Mot.'"'));
echo "Mot: $Mot <br />
Définition: $Definition['Definition']";
}
}
?>


Merci de m'aider

6 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
29 déc. 2009 à 20:28
$Existence_mot = mysql_fetch_array(mysql_query('SELECT Mot FROM Glossaire WHERE Mot = "'.$Mot.'"'));
if ($Existence_mot['Mot'] == ""){
echo "Mot non trouvé";
}


bizarre comme test ?

si on ne trouve pas de mot tu ne pourra jamais avoir $Existence_mot['Mot']

il faut
$result=mysql_query('SELECT Mot FROM Glossaire WHERE Mot = "'.$Mot.'"');
if(mysql_num_rows($result)<1){
//mot non trouvé
}
1
okuni Messages postés 1221 Date d'inscription jeudi 4 septembre 2008 Statut Membre Dernière intervention 2 janvier 2014 126
29 déc. 2009 à 20:13
Je suppose que tu ne travailles pas avec notepad++ ou un programme similaire qui colore le code et "éclaire" les accolade et autres?
l'erreur est simple, tu as oublié une parenthèse fermée pour ton if :)

if (isset($_GET['Mot']))
0
Utilisateur anonyme
29 déc. 2009 à 20:15
Oui j'aillait modifier mon message car j'ai reperer cette erreur, mais il y a une autre erreur maintenant:

Merci en tout cas:

code final:

<?php
if (isset($_GET['Mot'])){
$Mot = $_GET['Mot'];
$Existence_mot = mysql_fetch_array(mysql_query('SELECT Mot FROM Glossaire WHERE Mot = "'.$Mot.'"'));
if ($Existence_mot['Mot'] == ""){
echo "Mot non trouvé";
}
else{
$Definition = mysql_fetch_array(mysql_query('SELECT Definition FROM Glossaire WHERE Mot = "'.$Mot.'"'));
$Definition = $Definition['Definition'];
echo "Mot: $Mot <br />
Définition: $Definition";
}
}
?>

ps: j'utilise notepad
0
okuni Messages postés 1221 Date d'inscription jeudi 4 septembre 2008 Statut Membre Dernière intervention 2 janvier 2014 126
29 déc. 2009 à 20:23
Quel est l'erreur?
Pour améliorer ton scripts, je te conseille d'utiliser la concaténation, c'est plus pratique :)
Comme ceci :
echo 'Mot: '.$Mot.'<br/>Définition: '.$Definition;

Aussi, tu pourrais prendre la définition du mot lors de ta première requete, même si tu ne l'utilise pas après, tu ne devra faire qu'une requete au lieu de 2.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
29 déc. 2009 à 20:32
Si le mot existe, $existence_mot ne sera pas vide et donc on pourra passer a l'etape suivante: mon code marche de toute façon, mais je vais suivre vos conseille.
0
okuni Messages postés 1221 Date d'inscription jeudi 4 septembre 2008 Statut Membre Dernière intervention 2 janvier 2014 126
29 déc. 2009 à 20:41
Tu parlais d'une erreur. Quel type d'erreur est-ce?
0
Utilisateur anonyme
29 déc. 2009 à 23:23
J'ai corrigé l'erreur dans l'exemple
0