Lier des recherches php dans un moteur de recherche
Hors ligneNanor Le 05/05/2006 à 22:24 Profil de Nanor Configuration de Nanor

Bonjour a tous ,
je suis en train de creer un moetur de recherche en php comprenant differentes zones de saisie pour la recherche.
Par exemple je veux saisir des informations relatives a des performance avec le nom d'un performer ainsi qu'avec une date,
mais je veux aussi pouvoir obtenir ces informations en ne remplissant par exemple que le champ date.
Mon programme ne marche malheureusement qu'avec les donnees de la table performer et non performance(pf) et place (pl)
Quelqu'un peut il m'aider voici mon script ou l'on m'affiche un message d'erreur pour la ligne en rouge :
<?
$q = "SELECT pr.*,
pf.*,
pl.*
FROM performer AS pr
INNER JOIN performance AS pf ON pr.IDPerf=pf.IDPerf
INNER JOIN place AS pl ON pl.CodeStage=pf.CodeStage
WHERE pr.PerfName='$perfname'
OR pr.TypePerf='$typeperf'
OR pr.PerfCodeName='$perfcodename'
OR pf.Date='$date'
OR pf.Start='$start'
OR pf.End='$end'
OR pl.Stage='$stage'
OR pl.LocStage='$locstage' ";

$r = mysql_query($q);
while ($row=mysql_fetch_array($r)){
     $idperf = $row[IDPerf];
     $perfname = $row[PerfName];
     $typeperf = $row[TypePerf];
     $perfcodename = $row[PerfCodeName];
     $tagline = $row[Tagline];
     $idperformance = $row[IDPerformance];
     $date = $row[Date];
     $start = $row[Start];
     $end = $row[End];
     $codestage = $row[CodeStage];
     $stage = $row[Stage];
     $locstage = $row[LocStage];
     echo "<tr>";
     /* Affichage du contenu de performer */
     print "<td>$perfname</td>\n";
     print "<td>$typeperf</td>\n";
     print "<td>$perfcodename</td>\n";
     print "<td>$tagline</td>\n";
     /* Affichage du contenu de performance */
     print "<td>$date</td>\n";
     print "<td>$start</td>\n";
     print "<td>$end</td>\n";
     /* Affichage du contenu de stage */
     echo "<td>$stage</td>\n";
     echo "<td>$locstage</td>\n";
     echo "</tr>";
}
?>
Hors ligneAnthony Le 07/05/2006 à 22:41 Profil de Anthony Configuration de Anthony

Admin
Salut,

quel est ton message d'erreur ? Si c'est un message "is not a valid Ressource" (ou quelque chose d'approchant) ta requête SQL n'est pas valide (erreur de syntaxe quelque part, ou alors un champ qui n'existe pas, etc...)
--

Hors ligneNanor Le 08/05/2006 à 18:46 Profil de Nanor Configuration de Nanor

Salut ,
Mon message d'erreur est le suivant :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ... on line 193
ce qui correspond a cette ligne en rouge :
while ($row=mysql_fetch_array($r)){
     $idperf = $row[IDPerf];
Merci d'avoir repondu
Hors ligneAnthony Le 08/05/2006 à 20:48 Profil de Anthony Configuration de Anthony

Admin
Ta requête est donc invalide, il faut la corriger.
--

Hors ligneNanor Le 08/05/2006 à 20:59 Profil de Nanor Configuration de Nanor

Oui mais le probleme c'est que je ne vois pas ou est l'erreur, peux tu m'aider s'il te plait?
Hors ligneAnthony Le 08/05/2006 à 21:45 Profil de Anthony Configuration de Anthony

Admin
Tape ta requête dans PHPMyadmin et regarde ce que ça t'affiches, et dis-le nous ici ;)
--

Hors ligneNanor Le 09/05/2006 à 01:23 Profil de Nanor Configuration de Nanor


C'est bon j'ai trouve mon erreur,certaines informations appartenaient a d'autres tables ,j'ai trouve mon erreur grace a un print mysql_error()
Excuse moi pour l'attention que tu as du m'apporter,merci et passe une bonne journee.
Vous avez résolu votre problème avec VIC ? Faites-le savoir sur les réseaux sociaux !
Vulgarisation-informatique.com
Cours en informatique & tutoriels