8797 sujets
Salut, je capte pas, tu veux faire une pagination ? genre 20 résultats par page ? C'est pas compliqué :
- Tu fais une requête pour avoir le nombre de réponses totales
- Tu définis ta variable de $nombrederesultatsparpage
- Tu fais une requête en mettant un départ et une limite
- Tu récupères ta variable $_GET['page']
etc etc... J'essaye de te retrouver un vieux morceau de mes codes....
- Tu fais une requête pour avoir le nombre de réponses totales
- Tu définis ta variable de $nombrederesultatsparpage
- Tu fais une requête en mettant un départ et une limite
- Tu récupères ta variable $_GET['page']
etc etc... J'essaye de te retrouver un vieux morceau de mes codes....
Hello,
Le but c'est pas qu'on te ponde le code, mais qu'on t'explique le moyen d'y arriver :
- Tu peux choisir la plage des lignes retournées par ta requête SQL avec LIMIT
- Suffit de remplacer les limites par des variables
- Les variables sont transmises par l'URL via les liens de pagination
Avec ces informations tu devrais pas avoir de peine à t'en sortir.
En espérant t'avoir aidé.
Bye!
Le but c'est pas qu'on te ponde le code, mais qu'on t'explique le moyen d'y arriver :
- Tu peux choisir la plage des lignes retournées par ta requête SQL avec LIMIT
/* On exclut les 10 premiers résultats, on retourne tout jusqu'au 30e */
SELECT * FROM users LIMIT 10,30
- Suffit de remplacer les limites par des variables
- Les variables sont transmises par l'URL via les liens de pagination
Avec ces informations tu devrais pas avoir de peine à t'en sortir.
En espérant t'avoir aidé.
Bye!
Ah oui désolé j'avais zappé, c'est mon premier script en php, ça date de 2007 donc ça doit être bourré de choses mal faites, je vais regarder en même temps que je copie / colle... Voilà :
Pour cette partie il faut que tu vérifies ta variable $Page avec is_int par exemple :
Ah oui je gérais mes images avec ce script, donc tu vas souvent voir "image" revenir, toi se sera pour tes news mais c'est pareil.
Là je récupère mon nombre d'image au total, ou bien si j'ai selectionné une catégorie, le nombre d'image total de cette catégorie, pareil pas de gestion d'erreur sql etc etc... :
Là je vais définir mon nombre d'images (news) à afficher par page, mon nombre de pages, et ma première image à afficher :
Là c'était vraiment propre à ma mise en page, je me servais d'un tableau, bouh bouh bouh c'est pas beau.... Ok mais j'étais jeune on va dire
:
Et pour finir la pagination :
Encore une fois il n'y a rien d'optimisé, rien de sécurisé, j'étais le seul à me servir de ce script, je ne risquais pas de me hacker moi même... Vérifie donc bien de ton côté !
Pour cette partie il faut que tu vérifies ta variable $Page avec is_int par exemple :
if (isset($_GET['page']))
{
$Page = $_GET['page'];
}
else
{
$Page = 1 ;
}
Ah oui je gérais mes images avec ce script, donc tu vas souvent voir "image" revenir, toi se sera pour tes news mais c'est pareil.
Là je récupère mon nombre d'image au total, ou bien si j'ai selectionné une catégorie, le nombre d'image total de cette catégorie, pareil pas de gestion d'erreur sql etc etc... :
$TexteRequeteNombreImage = "SELECT COUNT(id) FROM pan_pic" ;
if(isset($_POST['CatSelect']))
{
$Cat = $_POST['CatSelect'] ;
$TexteRequeteNombreImage .= " WHERE cat=".$Cat." " ;
}
if(isset($_GET['cat']))
{
$Cat = $_GET['cat'] ;
$TexteRequeteNombreImage .= " WHERE cat=".$Cat." " ;
}
$RequeteNombreTotalImage = mysql_query($TexteRequeteNombreImage) ;
$ArrayTRNI = mysql_fetch_array($RequeteNombreTotalImage) ;
$NombreTotalImage = $ArrayTRNI['COUNT(id)'] ;
Là je vais définir mon nombre d'images (news) à afficher par page, mon nombre de pages, et ma première image à afficher :
$NombreDImageParPage = 24 ;
$NombreDePages = ceil($NombreTotalImage / $NombreDImageParPage);
$PremiereImageAAfficher = ($Page - 1) * $NombreDImageParPage ;
Là c'était vraiment propre à ma mise en page, je me servais d'un tableau, bouh bouh bouh c'est pas beau.... Ok mais j'étais jeune on va dire

// Nombre d'images sur la page :
if(($NombreTotalImage > 24) AND ($Page == 1))
{
$NombreImagesSurLaPage = 24 ;
}
elseif($NombreTotalImage <= 24)
{
$NombreImagesSurLaPage = $NombreTotalImage ;
}
else
{
if($NombreTotalImage - (($Page - 1) * 24) > 24)
{
$NombreImagesSurLaPage = 24 ;
}
else
{
$NombreImagesSurLaPage = $NombreTotalImage - (($Page - 1) * 24) ;
}
}
Et pour finir la pagination :
echo '<div id="Pages">' ;
echo 'Page(s) : ' ;
for ($i = 1 ; $i <= $NombreDePages ; $i++)
{
if($i == $Page)
{
echo $i.' ' ;
}
else
{
echo '<a href="accueil.php?section=ListPic&page=' . $i . '' ;
if(isset($_POST['CatSelect']))
{
echo '&cat='.$_POST['CatSelect'].' ';
}
if(isset($_GET['cat']))
{
echo '&cat='.$_GET['cat'].' ';
}
echo '">' . $i . '</a> ';
}
}
echo '</div>' ;
Encore une fois il n'y a rien d'optimisé, rien de sécurisé, j'étais le seul à me servir de ce script, je ne risquais pas de me hacker moi même... Vérifie donc bien de ton côté !
Je viens de regarder vite fait :
Il doit manquer qqchose parce que là tu ne fais absolument rien hormis te connecter à la base et mettre du texte dans une variable avec des erreurs en plus
if ($recherche=="") {
mysql_select_db($database_blablabla, $blablabla);
$query_lemoteur="select * FROM latable LIMIT ".(($lot-1)*$parlot).",".$parlot;
}
Il doit manquer qqchose parce que là tu ne fais absolument rien hormis te connecter à la base et mettre du texte dans une variable avec des erreurs en plus

if ($requete=="") {
$query_lemoteur="SELECT * FROM xxxx LIMIT ".(($pg-1)*$ppge).",".$ppge;
} else {
$query_lemoteur="SELECT * FROM xxxx WHERE concat(nom,prenom) LIKE '%".etc....' LIMIT ".(($pg-1)*$ppge).",".$ppge;
$rps = mysql_query($query_lemoteur, $xxxxxx) or die(mysql_error());
}
$nbrreponses = mysql_num_row($rps);
if($nbrreponses < 1){
echo "rien trouvé";
}else{
while ($personne=mysql_fetch_array($rps)) {
?>
<?php echo $personne['prenom']; ?> <?php echo $personne['nom']; ?>
<?php
}
}