Moteur de recherche

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Moteur de recherche

par rami » 19 oct. 2005, 14:18

De rien :)

par Elisa » 19 oct. 2005, 14:11

:oops: Je pensais que tu me demandais de les remettre à 0... En effet, en raison des modifs du scripts, il fallait que je les supprime carrément. Merci rami. Merci également à Cyrano pour sa patience :agenouille: :agenouille: C'est une étape qui se finit.

Voici le script valide:
<?php
// Récupération des données du formulaire
$MotRech = $_POST['MotRech'];
if(!empty($MotRech))
{
    ?>
<input type="hidden" name="MotRech" value="<? echo $MotRech;?>">
    <?php
    //Connection à la base//
    $lien = mysql_connect("xx");
    mysql_select_db("xx", $lien);
    //Requête pour rechercher dans les champs de la table groupes//
    $ReqGroupe = "SELECT IdGroupe, NomGroupe,
                MATCH (NomGroupe, AutreNomGroupe, Presentation, InfCompl)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE) AS cpt
                FROM groupes
                WHERE MATCH (NomGroupe, AutreNomGroupe, Presentation, InfCompl)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE)
                ORDER BY cpt DESC ";
    $ResGroupe=mysql_query($ReqGroupe) or die('Il y a eu une erreur : <strong>' . mysql_error() .
    '</strong><br>Dans : <br>' . $ReqGroupe);
 
    //S'il n'y a pas de résultat//
    if(mysql_num_rows($ResGroupe) == 0)
    {
        echo "Il n'y a pas de résultat pour le(s) mot(s) recherché(s)";
    }
    //Sinon on parcourt le tableau de résultats//
    else
    {
		while ($ValGroupe=mysql_fetch_assoc($ResGroupe))
        {
?>
<a href="xx.php?IdGroupe=<?php print ($ValGroupe["IdGroupe"]);  ?>"><?php print ($ValGroupe["NomGroupe"]); ?><br /></a>
<?php

        }
    }
mysql_close($lien);
?>

<?php 
//Connection à la base//
    $lien = mysql_connect("xx");
    mysql_select_db("xx", $lien);
// Requête pour rechercher dans les champs de la table societes//
    $ReqSociete = "SELECT IdSociete, NomSociete,
                MATCH (NomSociete, AutreNomSociete, Presentation, InfCompl)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE) AS cpt
                FROM societes
                WHERE MATCH (NomSociete, AutreNomSociete, Presentation, InfCompl)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE)
                ORDER BY cpt DESC ";

    $ResSociete=mysql_query($ReqSociete) or die('Il y a eu une erreur : <strong>' . mysql_error() .
    '</strong><br>Dans : <br>' . $ReqSociete);

    if(mysql_num_rows($ResSociete) == 0)
    {
        echo "Il n'y a pas de résultat pour le(s) mot(s) recherché(s)";
    }
    //Sinon on parcourt le tableau de résultats//
    else
    {
        while ($ValSociete=mysql_fetch_assoc($ResSociete))
        {

?>
<a href="xx.php?IdSociete=<?php print ($ValSociete["IdSociete"]); ; ?>"><?php print ($ValSociete["NomSociete"]);  ?></a><br />
<?php
        }
    }
 mysql_close($lien);
?>
<?php 
//Connection à la base//
    $lien = mysql_connect("xx");
    mysql_select_db("xx", $lien);
    // Requête pour rechercher dans les champs de la table produits//
    $ReqProduit = "SELECT IdProduit, NomProduit,
                MATCH (NomProduit, Presentation)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE) AS cpt
                FROM produits
                WHERE MATCH (NomProduit, Presentation)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE)
                ORDER BY cpt DESC ";
    $ResProduit=mysql_query($ReqProduit) or die('Il y a eu une erreur : <strong>' . mysql_error() .
    '</strong><br>Dans : <br>' . $ReqProduit);

   if(mysql_num_rows($ResProduit) == 0)
    {
        echo "Il n'y a pas de résultat pour le(s) mot(s) recherché(s)";
    }
    //Sinon on parcourt le tableau de résultats//
    else
    {
    while ($ValProduit=mysql_fetch_array($ResProduit))
        {
?>
<a href="xx.php?IdProduit=<?php print ($ValProduit["IdProduit"]); ?>"><?php print ($ValProduit["NomProduit"]);  ?><br /></a>
<?php
        }
    }
mysql_close($lien);
?>

<?php 
}
else
	{
?>
<p>Aucun mot clé envoyé.</p>
<?php
	}
?>

par rami » 19 oct. 2005, 14:00

Je ne vois pas comment cela est possible. As-tu fait le test d'enlever ces lignes?

par Elisa » 19 oct. 2005, 13:56

Si je les enlève, je n'ai plus ma première réponse. :?

par rami » 19 oct. 2005, 13:55

  $IdProduit = mysql_result($ResProduit,-1,'IdProduit');
        $NomProduit = mysql_result($ResProduit,-1,'NomProduit'); 
Tu cherches à récupérer la valeur du champ IdProduit de la ligne -1. Or les lignes sont indexées à partir de 0, ça paraît logique. A quoi te servent ces 2 lignes? Enlèves les, ca devrait fonctionner sans erreur.

par Elisa » 19 oct. 2005, 13:49

Voilà quelque chose d'assez étrange, j'obtiens mes quatres réponses (mais avec deux messages d'erreurs) avec le code suivant:
<?php
// Récupération des données du formulaire
$MotRech = $_POST['MotRech'];
?>
<input type="hidden" name="MotRech" value="<? echo $MotRech;?>">

<?php 
//Connection à la base//
    $lien = mysql_connect("xx","xx","xx");
    mysql_select_db("xx", $lien);
    // Requête pour rechercher dans les champs de la table produits//
    $ReqProduit = "SELECT IdProduit, NomProduit,
                MATCH (NomProduit, Presentation)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE) AS cpt
                FROM produits
                WHERE MATCH (NomProduit, Presentation)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE)
                ORDER BY cpt DESC ";
    $ResProduit=mysql_query($ReqProduit) or die('Il y a eu une erreur : <strong>' . mysql_error() .
    '</strong><br>Dans : <br>' . $ReqProduit);

   if(mysql_num_rows($ResProduit) == 0)
    	{
        echo "Il n'y a pas de résultat pour le(s) mot(s) recherché(s)";
    	}
    //Sinon on parcourt le tableau de résultats//
    else
    	{
    	$IdProduit = mysql_result($ResProduit,-1,'IdProduit');
	    $NomProduit = mysql_result($ResProduit,-1,'NomProduit');
		while ($ValProduit=mysql_fetch_array($ResProduit))
        	{
?>
<a href="aff_rechproduits.php?IdProduit=<?php print ($ValProduit["IdProduit"]); ?>"><?php print ($ValProduit["NomProduit"]); ?><br /></a>
<?php
  			}
        }
   
mysql_close($lien);
?>
J'ai donc modifié la valeur (0) par la valeur (-1). La modification est considérée comme une erreur mais paradoxalement il me donne toutes les réponses. J'ai du mal à comprendre de telles subtilités. :(

Voici le message d'erreur:
Warning: mysql_result(): Unable to jump to row -1 on MySQL result index 3 in c:\program files\easyphp1-8\www\181005\user\test2.php on line 29

Warning: mysql_result(): Unable to jump to row -1 on MySQL result index 3 in c:\program files\easyphp1-8\www\181005\user\test2.php on line 30

par Elisa » 19 oct. 2005, 11:46

J'ai fait le test uniquement sur une seule des trois requêtes. J'ai changé

$ValProduit=mysql_fetch_row($ResProduit)
par
$ValProduit=mysql_fetch_array($ResProduit)

Il me donne trois réponses sur les quatre attendues. Cette fois-ci la première ligne du tableau n'apparaît plus. :shock: Je n'arrive pas à comprendre à quoi c'est dû.

par Cyrano » 19 oct. 2005, 10:35

Bon très bien, mais qu'est-ce que tu obtiens.

Méthode de débuggage d'un script: il faut cerner le point où se trouve l'erreur: Il faut faire afficher les variables sur lesquelles on a un doute: si le résultat attendu est correct, alors on peut éliminer ce point et passer à autre chose, mais c'est en principe parce que le script a correctement fonctionné jusqu'à ce point: l'erreur est donc plus loin : Si au contraire l'information affichée est erronée, alors l'erreur est AVANT. Petit à petit, on finit par pointer directement sur le bobo.

par Elisa » 19 oct. 2005, 09:59

Bonjour,
Tu forces pas trop pour trouver les erreurs je trouve Confused
Je te trouve assez injuste étant donné que j'atteignais ma 10e heure de boulot et que ça fait plusieurs jours que j'y travaille exclusivement. Parfois, ce qui paraît élémentaire ne l'est plus passé un certain nombre d'heures de travail. :wink:

Par ailleurs j'avais déjà fait le test puisque tu me l'avais conseillé précédemment. J'avais effectivement vérifié si le mot recherché était correctement transmis ce qui était le cas.

Le type d'erreur que j'avais n'apparaissait que lorsque la condition n'était pas remplie, c'est-à-dire lorsqu'il n'y avait pas de résultat. Sinon il m'affichait normalement les noms lorsqu'il y avait des réponses. C'était donc la condition qui posait problème. Cette erreur est résolue.

Le souci que j'ai désormais, c'est l'affichage des réponses. Il m'affiche seulement la première réponse du tableau. Lorsque sous MyAdmin j'ai quatre réponses, il m'affiche seulement la première qu'il duplique plusieurs fois. Est-ce que ça peut être un problème de requête?

Voici mon code tel qu'il se présente désormais.
<?php
// Récupération des données du formulaire
$MotRech = $_POST['MotRech'];
if(!empty($MotRech))
{
    ?>
<input type="hidden" name="MotRech" value="<? echo $MotRech;?>">
    <?php
    //Connection à la base//
    $lien = mysql_connect("xx","xx","xx");
    mysql_select_db("xx", $lien);
    //Requête pour rechercher dans les champs de la table groupes//
    $ReqGroupe = "SELECT IdGroupe, NomGroupe,
                MATCH (NomGroupe, AutreNomGroupe, Presentation, InfCompl)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE) AS cpt
                FROM groupes
                WHERE MATCH (NomGroupe, AutreNomGroupe, Presentation, InfCompl)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE)
                ORDER BY cpt DESC ";
    $ResGroupe=mysql_query($ReqGroupe) or die('Il y a eu une erreur : <strong>' . mysql_error() .
    '</strong><br>Dans : <br>' . $ReqGroupe);
 
    //S'il n'y a pas de résultat//
    if(mysql_num_rows($ResGroupe) == 0)
    {
        echo "Il n'y a pas de résultat pour le(s) mot(s) recherché(s)";
    }
    //Sinon on parcourt le tableau de résultats//
    else
    {
		$IdGroupe = mysql_result($ResGroupe,0,'IdGroupe');
	    $NomGroupe = mysql_result($ResGroupe,0,'NomGroupe');
        while ($ValGroupe=mysql_fetch_row($ResGroupe))
        {
?>
<a href="xx.php?IdGroupe=<?php echo $IdGroupe; ?>"><?php echo $NomGroupe; ?><br /></a>
<?php

        }
    }
mysql_close($lien);
?>

<?php 
//Connection à la base//
    $lien = mysql_connect("localhost","admin","JPLsin05");
    mysql_select_db("sinbad", $lien);
// Requête pour rechercher dans les champs de la table societes//
    $ReqSociete = "SELECT IdSociete, NomSociete,
                MATCH (NomSociete, AutreNomSociete, Presentation, InfCompl)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE) AS cpt
                FROM societes
                WHERE MATCH (NomSociete, AutreNomSociete, Presentation, InfCompl)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE)
                ORDER BY cpt DESC ";

    $ResSociete=mysql_query($ReqSociete) or die('Il y a eu une erreur : <strong>' . mysql_error() .
    '</strong><br>Dans : <br>' . $ReqSociete);

    if(mysql_num_rows($ResSociete) == 0)
    {
        echo "Il n'y a pas de résultat pour le(s) mot(s) recherché(s)";
    }
    //Sinon on parcourt le tableau de résultats//
    else
    {
		$IdSociete = mysql_result($ResSociete,0,'IdSociete');
    	$NomSociete = mysql_result($ResSociete,0,'NomSociete');
        while ($ValSociete=mysql_fetch_row($ResSociete))
        {

?>
<a href="xx.php?IdSociete=<?php echo $IdSociete; ?>"><?php echo $NomSociete; ?></a><br />
<?php
        }
    }
 mysql_close($lien);
?>
<?php 
//Connection à la base//
    $lien = mysql_connect("localhost","admin","JPLsin05");
    mysql_select_db("sinbad", $lien);
    // Requête pour rechercher dans les champs de la table produits//
    $ReqProduit = "SELECT IdProduit, NomProduit,
                MATCH (NomProduit, Presentation)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE) AS cpt
                FROM produits
                WHERE MATCH (NomProduit, Presentation)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE)
                ORDER BY cpt DESC ";
    $ResProduit=mysql_query($ReqProduit) or die('Il y a eu une erreur : <strong>' . mysql_error() .
    '</strong><br>Dans : <br>' . $ReqProduit);

   if(mysql_num_rows($ResProduit) == 0)
    {
        echo "Il n'y a pas de résultat pour le(s) mot(s) recherché(s)";
    }
    //Sinon on parcourt le tableau de résultats//
    else
    {
    	$IdProduit = mysql_result($ResProduit,0,'IdProduit');
	    $NomProduit = mysql_result($ResProduit,0,'NomProduit');
		while ($ValProduit=mysql_fetch_row($ResProduit))
        {
?>
<a href="xx.php?IdProduit=<?php echo $IdProduit; ?>"><?php echo $NomProduit; ?><br /></a>
<?php
        }
    }
mysql_close($lien);
?>
<?
}
else
	{
?>
<p>Aucun mot clé envoyé.</p>
<?php
	}
?>

par Cyrano » 18 oct. 2005, 19:32

Tu forces pas trop pour trouver les erreurs je trouve :?

Allez, nouveau test:
<?php
// Récupération des données du formulaire
$MotRech = $_POST['MotRech'];
if(!empty($MotRech))
{
    ?>
<input type="hidden" name="MotRech" value="<? echo $MotRech;?>">
    <?php
    //Connection à la base//
    $lien = mysql_connect("xx","xx","xx");
    mysql_select_db("xx", $lien);
    //Requête pour rechercher dans les champs de la table groupes//
    $ReqGroupe = "SELECT IdGroupe, NomGroupe,
                MATCH (NomGroupe, AutreNomGroupe, Presentation, InfCompl)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE) AS cpt
                FROM groupes
                WHERE MATCH (NomGroupe, AutreNomGroupe, Presentation, InfCompl)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE)
                ORDER BY cpt DESC ";
    $ResGroupe=mysql_query($ReqGroupe) or die('Il y a eu une erreur : <strong>' . mysql_error() .
    '</strong><br>Dans : <br>' . $ReqGroupe);

    $IdGroupe = mysql_result($ResGroupe,0,'IdGroupe');
    $NomGroupe = mysql_result($ResGroupe,0,'NomGroupe');

    //S'il n'y a pas de résultat//
    if(mysql_num_rows($ResGroupe) == 0)
    {
        echo "Il n'y a pas de résultat pour le(s) mot(s) recherché(s)";
    }
    //Sinon on parcourt le tableau de résultats//
    else
    {
        while ($ValGroupe=mysql_fetch_row($ResGroupe))
        {
?>
<a href="xx.php?IdGroupe=<?php echo $IdGroupe; ?>"><?php echo $NomGroupe; ?><br />
<?php

        }
    }
    // Requête pour rechercher dans les champs de la table societes//
    $ReqSociete = "SELECT IdSociete, NomSociete,
                MATCH (NomSociete, AutreNomSociete, Presentation, InfCompl)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE) AS cpt
                FROM societes
                WHERE MATCH (NomSociete, AutreNomSociete, Presentation, InfCompl)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE)
                ORDER BY cpt DESC ";

    $ResSociete=mysql_query($ReqSociete) or die('Il y a eu une erreur : <strong>' . mysql_error() .
    '</strong><br>Dans : <br>' . $ReqSociete);
    echo $ResSociete;

    $IdSociete = mysql_result($ResSociete,0,'IdSociete');
    $NomSociete = mysql_result($ResSociete,0,'NomSociete');

    if(mysql_num_rows($ResSociete) == 0)
    {
        echo "Il n'y a pas de résultat pour le(s) mot(s) recherché(s)";
    }
    //Sinon on parcourt le tableau de résultats//
    else
    {
        while ($ValSociete=mysql_fetch_row($ResSociete))
        {

?>
<a href="yy.php?IdSociete=<?php echo $IdSociete; ?>"><?php echo $NomSociete; ?><br />
<?php
        }
    }

    // Requête pour rechercher dans les champs de la table produits//
    $ReqProduit = "SELECT IdProduit, NomProduit,
                MATCH (NomProduit, Presentation)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE) AS cpt
                FROM produits
                WHERE MATCH (NomProduit, Presentation)
                AGAINST ('".$MotRech."'IN BOOLEAN MODE)
                ORDER BY cpt DESC ";
    $ResProduit=mysql_query($ReqProduit) or die('Il y a eu une erreur : <strong>' . mysql_error() .
    '</strong><br>Dans : <br>' . $ReqProduit);

    $IdProduit = mysql_result($ResProduit,0,'IdProduit');
    $NomProduit = mysql_result($ResProduit,0,'NomProduit');

    if(mysql_num_rows($ResProduit) == 0)
    {
        echo "Il n'y a pas de résultat pour le(s) mot(s) recherché(s)";
    }
    //Sinon on parcourt le tableau de résultats//
    else
    {
        while ($ValProduit=mysql_fetch_row($ResProduit))
        {
?>
<a href="zz.php?IdProduit=<?php echo $IdProduit; ?>"><?php echo $NomProduit; ?><br />
<?php
        }
    }
    mysql_close($lien);
}
else
{
?>
<p>Aucun mot clé envoyé.</p>
<?php
}
?>

par Elisa » 18 oct. 2005, 15:39

Warf, désolée, je pensais que je m'étais connectée... C'est moi qui ait écrit au-dessus, vous vous en doutez :wink:

par Invité » 18 oct. 2005, 14:31

Un truc m'échappe un peut: qu'est-ce que fait le champ cché en début de script ? Est-ce que par hasard tu exécutes directement ce script ou tu passes par un vrai formulaire ?

Fais donc un echo() sur tes requêtes, je soupçonne fortement le gag: la variable $MotRech est vide.
Je passe vraiment par un formulaire. J'ai un script A où l'utilisateur saisit le mot. Le script B que je suis en train de réaliser est censé effectuer la recherche et faire afficher le résultat. L'echo de la requête me renvoie le mot.
Finalement je garde le WHERE MATCH: il me permet de garder que les réponses supérieures ou égales à 1.

J'ai testé la requête sous myadmin. Elle fonctionne bien (du moins pour ce que j'en attends).

Grâce aux conseils de Pjl, voici mon code:
<?php
// Récupération des données du formulaire
	$MotRech = $_POST['MotRech'];
?>

<input type="hidden" name="MotRech" value="<? echo $MotRech;?>">

<?php
//Connection à la base//
	$lien = mysql_connect("xx","xx","xx");
	mysql_select_db("xx", $lien);
//Requête pour rechercher dans les champs de la table groupes//
	$ReqGroupe = "SELECT IdGroupe, NomGroupe,
				MATCH (NomGroupe, AutreNomGroupe, Presentation, InfCompl)
				AGAINST ('".$MotRech."'IN BOOLEAN MODE) AS cpt
				FROM groupes
				WHERE MATCH (NomGroupe, AutreNomGroupe, Presentation, InfCompl)
				AGAINST ('".$MotRech."'IN BOOLEAN MODE)
				ORDER BY cpt DESC ";
	$ResGroupe=mysql_query($ReqGroupe) or die('Il y a eu une erreur : <strong>' . mysql_error() .
'</strong><br>Dans : <br>' . $ReqGroupe); 

$IdGroupe = mysql_result($ResGroupe,0,'IdGroupe');
$NomGroupe = mysql_result($ResGroupe,0,'NomGroupe');

//S'il n'y a pas de résultat//
if(mysql_num_rows($ResGroupe) == 0)
     {
     echo "Il n'y a pas de résultat pour le(s) mot(s) recherché(s)";
     }
//Sinon on parcourt le tableau de résultats//
else
    {
    while ($ValGroupe=mysql_fetch_row($ResGroupe))
          {
 ?>
<a href="xx.php?IdGroupe=<?php echo $IdGroupe; ?>"><?php echo $NomGroupe; ?><br />
<?php
              
          }
      }
// Requête pour rechercher dans les champs de la table societes//
$ReqSociete = "SELECT IdSociete, NomSociete,
				MATCH (NomSociete, AutreNomSociete, Presentation, InfCompl)
				AGAINST ('".$MotRech."'IN BOOLEAN MODE) AS cpt
				FROM societes
				WHERE MATCH (NomSociete, AutreNomSociete, Presentation, InfCompl)
				AGAINST ('".$MotRech."'IN BOOLEAN MODE)
				ORDER BY cpt DESC ";
				
$ResSociete=mysql_query($ReqSociete) or die('Il y a eu une erreur : <strong>' . mysql_error() .
'</strong><br>Dans : <br>' . $ReqSociete); 
echo $ResSociete;

$IdSociete = mysql_result($ResSociete,0,'IdSociete');
$NomSociete = mysql_result($ResSociete,0,'NomSociete');

if(mysql_num_rows($ResSociete) == 0)
     {
     echo "Il n'y a pas de résultat pour le(s) mot(s) recherché(s)";
     }
//Sinon on parcourt le tableau de résultats//
else
    {
	while ($ValSociete=mysql_fetch_row($ResSociete))
		{
	
?>
<a href="yy.php?IdSociete=<?php echo $IdSociete; ?>"><?php echo $NomSociete; ?><br />
<?php 
		}
	}
	
// Requête pour rechercher dans les champs de la table produits//
$ReqProduit = "SELECT IdProduit, NomProduit,
				MATCH (NomProduit, Presentation)
				AGAINST ('".$MotRech."'IN BOOLEAN MODE) AS cpt
				FROM produits
				WHERE MATCH (NomProduit, Presentation)
				AGAINST ('".$MotRech."'IN BOOLEAN MODE)
				ORDER BY cpt DESC ";
	$ResProduit=mysql_query($ReqProduit) or die('Il y a eu une erreur : <strong>' . mysql_error() .
'</strong><br>Dans : <br>' . $ReqProduit); 

$IdProduit = mysql_result($ResProduit,0,'IdProduit');
$NomProduit = mysql_result($ResProduit,0,'NomProduit');

if(mysql_num_rows($ResProduit) == 0)
     {
     echo "Il n'y a pas de résultat pour le(s) mot(s) recherché(s)";
     }
//Sinon on parcourt le tableau de résultats//
else
    {
	while ($ValProduit=mysql_fetch_row($ResProduit))
		{
?>
<a href="zz.php?IdProduit=<?php echo $IdProduit; ?>"><?php echo $NomProduit; ?><br />
<?php 
		}
	}
mysql_close($lien);
?>
Mais j'ai encore des erreurs que je ne comprends pas.
Les "Resource" correspondent aux echo $ResGroupe, $ResProduit et $ResSociete. Il m'affiche ceci comme erreur:
Resource id #3Resource id #4
Warning: mysql_result(): Unable to jump to row 0 on MySQL result index 4 in c:\program files\easyphp1-8\www\171005\user\rech2.php on line 56

Warning: mysql_result(): Unable to jump to row 0 on MySQL result index 4 in c:\program files\easyphp1-8\www\171005\user\rech2.php on line 57
Il n'y a pas de résultat pour le(s) mot(s) recherché(s)Resource id #5
Warning: mysql_result(): Unable to jump to row 0 on MySQL result index 5 in c:\program files\easyphp1-8\www\171005\user\rech2.php on line 87

Warning: mysql_result(): Unable to jump to row 0 on MySQL result index 5 in c:\program files\easyphp1-8\www\171005\user\rech2.php on line 88
Il n'y a pas de résultat pour le(s) mot(s) recherché(s)

par pjl » 18 oct. 2005, 13:39

Argh, j'ai en effet oublié de le lui faire remarquer.

par Cyrano » 18 oct. 2005, 13:23

Un truc m'échappe un peut: qu'est-ce que fait le champ cché en début de script ? Est-ce que par hasard tu exécutes directement ce script ou tu passes par un vrai formulaire ?

Fais donc un echo() sur tes requêtes, je soupçonne fortement le gag: la variable $MotRech est vide. :-k

par pjl » 18 oct. 2005, 13:21

tu dois utiliser la fonction PHP mysql_num_rows.