moteur de recherche qui n'affiche aucun resultat !!!

Petit nouveau ! | 1 Messages

16 mars 2010, 20:59

Bonjour,

J'aimerai vous solliciter pour un problème que je rencontre : ma page de resultat, resultat.php ,
On accède à celle-ci lorsque l'on fait une recherche depuis n'importe quelle page de mon site.

Pour plus de détails, voilà le code php de la page resultat.php :
<p> Voici la liste des résultats de votre recherche :</p>

<?php do { ?>
  <p><?php echo $row_tshirt['Nom']; ?></p> 
  <a href="details.php?id=<? echo $row_tshirt['id']; ?>"><? echo $row_tshirt['description']; ?></a> 
  
  <br/>
  
  
  
  <p><a href="details.php?id=<?php echo $row_tshirt['id']; ?>">Allez ici !</a></p>
  
  
  
<?
while($row_tshirt = mysql_fetch_array($tshirt)) // on fait un while pour afficher la liste des fonctions trouvées, ainsi que l'id qui permettra de faire le lien vers la page de la fonction
{
?>
<a href="details.php?id=<? echo $row_tshirt['id']; ?>"><? echo $row_tshirt['Nom']; ?></a><br/>
 <?
} 
  
  
  
  
   
  <?php } while ($row_tshirt = mysql_fetch_assoc($tshirt)); ?>


<p><a href="details.php?id=<?php echo $row_tshirt['id']; ?>">Allez ici !</a></p>


  <p> Il n'y a pas de résultats pour cette recherche.</p>
  

<pre>
<?php
print_r($_SESSION);
?>
</pre>

<pre>
<?php
print_r($_COOKIE);
?>
</pre>

<pre>
<?php
print_r($_GET);
?>
</pre>

<pre>
<?php
print_r($_POST);
?>
</pre>

<pre>
<?php
print_r($_FILES);
?>
</pre>

Je cherche donc à permettre au visiteur de faire des recherches d'article (ici, tshirt) en tapant un motcle. Afin de faire des tests, j'ai volontairement demandé plusieurs résultats (mais tous renvoient vers details.php?id=1 ) .

Lorque l'on fait une recherche sur mon site dans un navigteur, j'obtiens, en plus des resultats qui me donne toujours acces à la page details.php?id=1
un message d'erreur qui stipule :

Warning: mysql_fetch_assoc(): 5 is not a valid MySQL result resource in C:\wamp\www\Unnamed Site 2\resultat.php on line 152

Voilà, je ne comprend pas. Car en plus, j'utilise mysql_fetch_assoc() sur une autre page du site, et cela fonctionne...
J'espère que mon probleme reste conprehensible.
En vous remerciant pour votre aide



j'oubliais :
Voici le code SQL de mon jeu d'enregistrement de la page resultat.php :
SELECT *
FROM shop_tshirt
WHERE shop_tshirt.description LIKE %motcle% OR shop_tshirt.Nom LIKE %motcle% 
ou motcle = 0 et $_POST['motcle']

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

16 mars 2010, 23:53

Une piste:
L'imbrication des boucles (do while et while) sur une même variable "$row_tshirt"

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

devlop78
Invité n'ayant pas de compte PHPfrance

24 mars 2010, 15:30

J'ai rien compris. Désolé.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

24 mars 2010, 18:06

tu as
do
{
...
while($row_tshirt = mysql_fetch_array($tshirt))
{
....
}
}
while ($row_tshirt = mysql_fetch_assoc($tshirt))
ta variable row_tshirt est donc utilisée pour boucler sur 2 contenus différents

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

devlop78
Invité n'ayant pas de compte PHPfrance

25 mars 2010, 01:47

Non truc, je ne parlais pas à toi. Je disais que j'ai compris à la question initiale. En gros, je disais : peux-tu reformuler la question stp ?

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

25 mars 2010, 17:37

Non truc, je ne parlais pas à toi. Je disais que j'ai compris à la question initiale. En gros, je disais : peux-tu reformuler la question stp ?
Ok... je pense que l'auteur est déjà loin en faite :?

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute