[PHP] pagination des résultats engin recherch
dawcore
Messages postés
2
Statut
Membre
-
yozine Messages postés 11 Statut Membre -
yozine Messages postés 11 Statut Membre -
Bon voilà je vous explique mon problème,
sur ma page d'accueil j'ai un formulaire qui permet de rechercher dans une Base de donnée selon certains critère dans un menu déroulant (<select name="categories"><option>...</option>). Lorsque l'utilisateur appuie sur le bouton rechercher il est rediriger sur une page nommée rechercher.php ou j'affiche les résultat.
sur cette page il y à ce code:
Le problème c'est qu'il m'affiche constamment l'erreur suivante:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\dossier\rechercher.php on line 91
On dirais que le problème ce situe au niveau du while et de la requête....
Merci pour votre aide !
sur ma page d'accueil j'ai un formulaire qui permet de rechercher dans une Base de donnée selon certains critère dans un menu déroulant (<select name="categories"><option>...</option>). Lorsque l'utilisateur appuie sur le bouton rechercher il est rediriger sur une page nommée rechercher.php ou j'affiche les résultat.
sur cette page il y à ce code:
<?php
if(!isset($_GET['page']))
{
$page = "1";
}
else
{
$page = $_GET['page'];
}
$max_resultat = "5";
$de = (($page * $max_resultat) - $max_resultat);
$sql4 = "SELECT * FROM restaurants WHERE categorie LIKE '".$_POST["categories"]."' LIMIT '".$de."','".$max_resultat."' ";
$requete4 = mysql_query($sql4);
$couleur = "1";
echo "SELECT * FROM restaurants WHERE categorie LIKE '".$_POST["categories"]."' LIMIT '".$de."','".$max_resultat."' ";
//affichage des resultats
while($resultat=mysql_fetch_array($requete4))
{
echo $resultat['nom'];
}
$resultat_total = mysql_result(mysql_query("SELECT COUNT(*) AS total FROM restaurants WHERE categorie LIKE '".$_POST["categories"]."'"),0);
$pages_total = ceil($resultat_total / $max_resultat);
echo'<div id="pagination"><span id="pagination_resultats">Résultats</span>';
//affichage du precedent
if($page > 1)
{
$precedent = ($page - 1);
echo'<span class="btn-precedent"><a href="rechercher.php?page='.$precedent.'" title="Revenir d'une page">précédent</a></span>';
}
echo '<p style="text-align: center;">';
//affichage des pages
for($i = 1; $i <= $pages_total; $i++)
{
if(($page) == $i)
{
echo $i;
}
else
{
echo'<a href="rechercher.php?page='.$i.'" title="">'.$i.'</a>';
}
}
echo'</p>';
//affichage du suivant
if($page < $pages_total)
{
$suivant = ($page + 1);
echo'<span class="btn-suivant"><a href="rechercher.php?page='.$suivant.'" title="Avancer d'une page">suivant</a></span>';
}
echo'<!-- #pagination -->
</div>';
?>
Le problème c'est qu'il m'affiche constamment l'erreur suivante:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\dossier\rechercher.php on line 91
On dirais que le problème ce situe au niveau du while et de la requête....
Merci pour votre aide !
A voir également:
- [PHP] pagination des résultats engin recherch
- Resultats foot - Télécharger - Vie quotidienne
- Cheat engin - Télécharger - Outils Internet
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Pagination powerpoint - Guide
- Easy php - Télécharger - Divers Web & Internet
1 réponse
salut ouep, visiblement ta requete SQL n'est pas bonne.
generalement ca vient d'une variable PHP qui est mal passée. Le plus souvent la valeur de la variable dans la requete est nulle, ce qui donne une requete qui passe pas.
En fait il faut voir au niveau des var POST ou GET si elles sont bien toutes passées de page en page.
generalement ca vient d'une variable PHP qui est mal passée. Le plus souvent la valeur de la variable dans la requete est nulle, ce qui donne une requete qui passe pas.
En fait il faut voir au niveau des var POST ou GET si elles sont bien toutes passées de page en page.