Formulaire php

Résolu
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
Configuration: Windows XP
Firefox 3.5.5

6 réponses

  1. 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']))
    1. 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
      1. 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.
        1. $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. 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.
            1. Tu parlais d'une erreur. Quel type d'erreur est-ce?