Moteur php

salut a tous j'eesaye de creer un moteur de recherche sans base de donnée (sql) juste un pti truc en local et j'ai recuperer qlq script qui me permettent de le faire fonctionner par contre j'ai un message d'erreur que je n'arrive pas a resoudre si qlq'un a une illumination et peu m'eclairer

voila le message
Notice: Undefined variable: requete in c:\program files\easyphp1-7\www\planete\testm\resultats.php on line 55

et voila la parti du script ou il me dit qu'il y'a une erreur

/ *******************************************************************************
// Affichage d'un message d'avertissement dans le cas de figure où l'utilisateur
// a activé la recherche sans avoir préalablement saisi de requête ($requete est nul)
// *******************************************************************************

if(!$requete) {
print("<center>\n");
print("<font face=\"$policeResultats\" size=\"-1\" color=\"$couleurPoliceResultats\">\n");
print("Vous avez activé la recherche sans avoir préalablement saisi votre requête.<br>");
print("<a href=\"moteur.php\">Cliquez ici</a> pour effectuer une nouvelle recherche.<br>\n");
print("</font>\n");
print("</center>\n");
}

else {

// *******************************************************************************
// Cas de figure où l'utilisateur a bien saisi une requête
// *******************************************************************************

// *******************************************************************************
// Analyse de la requête et préparation de la recherche. La requête (entrée par
// l'utilisateur dans la valeur $requete) est décomposée en une série de mots clés,
// stockés dans les tableaux $expressions et $motsCles
// *******************************************************************************

// === Premier nettoyage de la requête formulée par l'utilisateur ===

$requete=trim(stripslashes($requete));

merci d'avance

17 réponses

  1. Salut,

    Ca veut juste dire que ta variable $requete n'est pas initialisée.
    Si tu appelles ce script depuis une autre page, il faut que tu passes à ce script une valeur (via un formulaire très probablement).

    Michael.

    Ne vous souciez pas de n'être pas remarqué ; cherchez 
    plutôt à faire quelque chose de remarquable [Confucius]
    0
    1. ca serait bien que tu es un forulaire oui et le champ du formulaire doit porter le nom de ta variable php: requete
      quand au formulaire il faut pas oublier <form method="post" action="tapage.php">
      0
      1. voila le script pour le formulaire je pense qu'il est correct
        </body>
        </html>

        <form action="resultats.php4" method="post">

        Veuillez saisir votre mot clé :<br>

        <input type="text" name="requete" size="20">

        <input type="submit" value="Rechercher"> </b> </br> </p>
        </form>
        </center>

        </body>
        </html>
        0
        1. Salut,
          Les variables globales doivent etre à off, utilise $_POST['requete'] à la place de $requete, et ca fonctionnera.

          Kalamit,
          Parle à ma culasse, mon carter est malade. :)
          0
          1. merci de ta reponce mais c'est pas trop clair pour moi vu que j'y connais rien ! et que c'est un scrip que j'ai recuperer

            es ce que doit faire sa : if $_POST['requete']
            {
            print("<center>\n");
            print("<font face=\"$policeResultats\" size=\"-1\" color=\"$couleurPoliceResultats\">\n");
            print("Vous avez activé la recherche sans avoir préalablement saisi votre requête.<br>");
            print("<a href=\"moteur.php\">Cliquez ici</a> pour effectuer une nouvelle recherche.<br>\n");
            print("</font>\n");
            print("</center>\n");
            }

            ou y'a t il pas de moyen de mettre directement les variables a on

            merci de ton aide
            0
            1. Oui, c'est ca:
              if(!$_POST['requete']) {
              ...


              Mettre les variables globales à on est la plus mauvaises des techniques. Dans quelque temps les hebergeurs ne les supporteront plus pour des raisons de securité.
              Tu peux changer la valeur dans le php.ini.

              Kalamit,
              Parle à ma culasse, mon carter est malade. :)
              0
              1. desoler d'insister mais j'ai tjrs un message Undefined index: requete in c:\program files\easyphp1-7\www\planete\testm\resultats.php4 on line 56

                VRAIMENT desolé mais j'aimerai vraiment que sa fonctionne

                encore merci
                0
                1. C'est quoi la ligne 56 ?

                  Kalamit,
                  Parle à ma culasse, mon carter est malade. :)
                  0
                  1. j'ai un autre soucis
                    en essayant de faire comme tu ma dit j'ai modifier est sa donne

                    print("La requête '<b>$_POST['requete']</b>' a donné <b>$nombreCorrespondances</b> résultats. <br>\n");

                    jai modifier $requete par $_POST['requete']

                    et maintenant j'ai ce message

                    Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in

                    si tu as une idée

                    MERCI
                    0
                    1. Ok...
                      Modifie la ligne comme ceci:
                      print("La requête '<b>".$_POST['requete']."</b>' a donné <b>".$nombreCorrespondances."</b> résultats. <br>\n");

                      Et ca devrait fonctionner au poil... :)

                      Kalamit,
                      Parle à ma culasse, mon carter est malade. :)
                      0
                      1. trop cool sa marche merrrrrrrrrrrrrrrrrccccccccccciiiiiiii

                        mais j'ai un encore un probleme !!! :-(

                        quand je tape mon mots clef j'ai une tres belle page qui m'indique que j'ai par exemple 30 fichier trouver page 3

                        j'arrive a avoir la 1er page mais quand je decide d'afficher la 2eme j'ai ce message

                        Notice: Undefined index: requete in c:\program files\easyphp1-7\www\planete\testm\resultats.php4 on line 56

                        Vous avez activé la recherche sans avoir préalablement saisi votre requête.
                        Cliquez ici pour effectuer une nouvelle recherche.

                        voici ce qui ce passe a la line 56 (1er ligne 56 et le reste du script)

                        if(!$_POST['requete']) {

                        print("<center>\n");
                        print("<font face=\"$policeResultats\" size=\"-1\" color=\"$couleurPoliceResultats\">\n");
                        print("Vous avez activé la recherche sans avoir préalablement saisi votre requête.<br>");
                        print("<a href=\"moteur.php4\">Cliquez ici</a> pour effectuer une nouvelle recherche.<br>\n");
                        print("</font>\n");
                        print("</center>\n");
                        }

                        else {
                        $_POST['requete'] =trim(stripslashes($_POST['requete']));

                        je vois que tu es doué (et pas moi :-( )
                        merci du coup de main
                        0
                        1. Ok.
                          Pas sur que ca fonctionne et un peu 'cracra', mais bon...

                          if((!$_POST['requete']) or (!$_GET['requete']) ) {

                          Essaye ca...

                          Kalamit,
                          Parle à ma culasse, mon carter est malade. :)
                          0
                          1. non sa fonctionne pas du tt j' ai le meme message d'erreur

                            en fait tt fonctionne tres bien j'arrive a faire tourner mon moteur de recherche mais quand je decide d'aller a la 2em page (un peu comme les page google) j'ai ce message d erreur qui me dit que j'ai rien specifier dans ma recherche alors que je voulais aller a la page suivante je crois peut etre que je devraiis rajouter quelque chose dans le scrip non , mais je vois pas quoi

                            qu'en penses tu ?

                            je te renvoi le message

                            Notice: Undefined index: requete in c:\program files\easyphp1-7\www\planete\testm\resultats.php4

                            merci
                            0
                            1. Non, non, y'a rien à rajouter...
                              Y'a un numero de ligne avec ca, non ?

                              Kalamit,
                              Parle à ma culasse, mon carter est malade. :)
                              0
                              1. oui ligne 56 jai fais les modif comme tu me la dit mais je suis revenu au if(!$_POST['requete']) {

                                et d'apres le message d'erreur c'est cette ligne qui merde

                                je peux peut etre t'envoyer les scripts qui fonts tourner mon moteur sur ta boite @mail (si sa ne te derange pas bien sur et si tu as un peu) sinon pas grave je me debrouillerai

                                mais c sympa de m'avoir aider trop cool
                                0
                                1. Vazy envoie... J'ai un peu de temps. :)

                                  Kalamit,
                                  Parle à ma culasse, mon carter est malade. :)
                                  0
                                  1. je t'envoi sa ici reservation@le-ruxelier.com???
                                    0
                                  2. Non !
                                    kalamit@commentcamarche.net !

                                    Kalamit,
                                    Parle à ma culasse, mon carter est malade. :)
                                    0
                                  3. @kalamitah oui desolé

                                    je viens d'envoyer les scripts sur ta boite si tu as le tps d'y jetter un oeil

                                    merci beaucouppppppp
                                    0
                                2. oui ligne 56 jai fais les modif comme tu me la dit mais je suis revenu au if(!$_POST['requete']) {

                                  et d'apres le message d'erreur c'est cette ligne qui merde

                                  je peux peut etre t'envoyer les scripts qui fonts tourner mon moteur sur ta boite @mail (si sa ne te derange pas bien sur et si tu as un peu) sinon pas grave je me debrouillerai

                                  mais c sympa de m'avoir aider trop cool
                                  0
                                  1. salut,
                                    voila je dois creer un moteur de recherche, sans base de donnée pour un usage en local(petit intranet), je ne sais pas du tout comment mis prendre.
                                    est ce que tu peux m'aider?
                                    Merci d'avance
                                    0