Bonjour à tous !
Bon, je souhaiterais afficher les résultats d'une de mes requetes Mysql sur plusieurs pages à la google.
En gros :
Via un moteur de recherche (qui est sur mon site) on obtient 100 réponses pour une recherche, souhaitant afficher que 10 résultat par pages, je voudrais pour générer 10 pages d'affichage.
Comment faire pour cela, sachant que je compte déjà le nb de résultat fait pour une requete ????
Merci à tous, et please soyez clair car j'ai trouvé des pseudo tuto mais qui ne marche pas !!!!!!
P.S : Est il possible de le faire via une méthode POST de formulaire pour faire plus propre ?
Merki !
# post | get
Posté par nicodache . Évalué à 2.
<form method="post" action="page de traitement.php">
<!-- formulaire -->
</form>
et dans ta page de traitement.php, tu récupères les valeurs non pas par $variable = $_GET["truc"], mais par $variable = $_POST["truc"]
oublie pas de vérifier si le "truc" en question existe bien :
IF (isset($_POST["truc"])) $variable = $_POST["truc"];
ELSE $variable = valeur_par_défaut;
# Programmation PHP
Posté par lion . Évalué à 1.
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
//récupération de $limite
if(isset($_GET['limite']))
{$limite=$_GET['limite'];} else {$limite=0;}
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
function verifLimite($limite,$total,$nombre) {
// je verifie si limite est un nombre.
if(is_numeric($limite)) {
// si $limite est entre 0 et $total, $limite est ok
// sinon $limite n'est pas valide.
if(($limite >=0) && ($limite <= $total) && (($limite%$nombre)==0)) {
// j'assigne 1 à $valide si $limite est entre 0 et $max
$valide = 1;
}
else {
// sinon j'assigne 0 à $valide
$valide = 0;
}
}
else {
// si $limite n'est pas numérique j'assigne 0 à $valide
$valide = 0;
}
// je renvois $valide
return $valide;
}
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
function displayNextPreviousButtons($limite,$total,$nb,$page) {
$limiteSuivante = $limite + $nb;
$limitePrecedente = $limite - $nb;
echo '<table><tr>'."\n";
if($limite != 0) {
echo '<td valign="top">'."\n";
echo '<form action="'.$page.'?page=compte&limite='.$limite.'" method="post">'."\n";
echo '<input type="submit" value="précédents">'."\n";
echo '<input type="hidden" value="'.$limitePrecedente.'" name="limite">'."\n";
echo '</form>'."\n";
echo '</td>'."\n";
}
if($limiteSuivante < $total) {
echo '<td valign="top">'."\n";
echo '<form action="'.$page.'?page=compte&limite='.$limite.'" method="post">'."\n";
echo '<input type="submit" value="suivants">'."\n";
echo '<input type="hidden" value="'.$limiteSuivante.'" name="limite">'."\n";
echo '</form>'."\n";
echo '</td>'."\n";
}
echo '</tr></table>'."\n";
}
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
function affichePages($nb,$page,$total) {
$nbpages=ceil($total/$nb);
$numeroPages = 1;
$compteurPages = 1;
$limite = 0;
echo '<table border = "0" ><tr>'."\n";
while($numeroPages <= $nbpages) {
echo '<td ><a href = "'.$page.'?page=compte'">'.$numeroPages.'</a></td>'."\n";
$limite = $limite + $nb;
$numeroPages = $numeroPages + 1;
$compteurPages = $compteurPages + 1;
if($compteurPages == 10) {
$compteurPages = 1;
echo '<br>'."\n";
}
}
echo '</tr></table>'."\n";
}
/*---------------------------------------------------------------------------------------------------------------*/
/*---------------------------------------------------------------------------------------------------------------*/
?>
j'espère que cela pourra t'aider -------------
bonne journée
# multi-pages
Posté par nicodache . Évalué à 2.
# phpdebutant
Posté par Michel Petit (site web personnel) . Évalué à 1.
http://www.phpdebutant.org/article84.php(...)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.