Moteur de recherche

Mammouth du PHP | 983 Messages

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.

Eléphant du PHP | 179 Messages

19 oct. 2005, 13:56

Si je les enlève, je n'ai plus ma première réponse. :?
Petit à petit, on devient moins petit... mais qu'est-ce qu'on vieillit!

Mammouth du PHP | 983 Messages

19 oct. 2005, 14:00

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

Eléphant du PHP | 179 Messages

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
	}
?>
Modifié en dernier par Elisa le 19 oct. 2005, 14:23, modifié 1 fois.
Petit à petit, on devient moins petit... mais qu'est-ce qu'on vieillit!

Mammouth du PHP | 983 Messages

19 oct. 2005, 14:18

De rien :)