cs_BeCaSiNe
Messages postés80Date d'inscriptiondimanche 23 février 2003StatutMembreDernière intervention16 juin 2008
-
27 juin 2004 à 16:17
VestaX
Messages postés374Date d'inscriptionmardi 2 décembre 2003StatutMembreDernière intervention24 avril 2013
-
8 avril 2013 à 14:03
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
VestaX
Messages postés374Date d'inscriptionmardi 2 décembre 2003StatutMembreDernière intervention24 avril 2013 8 avril 2013 à 14:03
Salut,
j'arrive un peu tard :p
Excellent mais cependant il y a un petit problème. Exemple, j'ai 8 pages en tout, et quand j'arrive à la 8eme page, ça continue de paginer à la 9eme, 10eme etc.. et bien entendu la 9eme, 10eme etc.. sont vides.
Ca aurait été bien de pouvoir mettre un système de blocage quand ça arrive à la fin.
260686
Messages postés1Date d'inscriptionmercredi 4 juin 2008StatutMembreDernière intervention27 juillet 2010 27 juil. 2010 à 13:24
Waoww
Merci coockiesch,
Juste une petite information : en pgsql on change
"SELECT * FROM table LIMIT $start, $nb_results_p_page"
en
"SELECT * FROM table LIMIT $nb_results_p_page OFFSET $start"
cdie
Messages postés31Date d'inscriptionjeudi 3 décembre 2009StatutMembreDernière intervention12 février 20122 5 mai 2010 à 16:12
Nikel, exactement ce que je cherchais ! Merci :)
staykool
Messages postés1Date d'inscriptionmercredi 30 août 2006StatutMembreDernière intervention16 mai 2007 16 mai 2007 à 05:21
electroweb, est-ce que tu as mis le code dans une classe finalement?
Moi j'ai ajouter un peu de style sur l'affichage et j'utilise aussi mysqli au lieu de mysql... Je vous en fait donc part! j'espère que tout sera beau... c'est la première fois que je répond à un commentaire! :o))
$nb_results_p_page = 1; // nombre de résultats par page
$nb_avant = 3; // nombre de page avant la page courante
$nb_apres = 3; // nombre de page après la page courante
$premiere = 1; // aficher le lien "première page" (1 ou 0)
$derniere = 1; // afficher le lien "dernière page" (1 ou 0)
$courant = empty($_GET['page']) ? 1 : $_GET['page']; // page
$start = ($courant - 1) * $nb_results_p_page; // start (requete mysql)
// comptage du nombre de lignes de la base
$sqlSelectUser = "SELECT count(id_user) FROM user";
$resSelectUser = $mysqli->query($sqlSelectUser);
$nb_user = $resSelectUser->fetch_array();
// nombre de lignes
$nb_results = $nb_user[0];
// nombre total de pages
$nb_pages = ceil($nb_results / $nb_results_p_page);
// nombre de pages avant
$avant = $courant > ($nb_avant + 1) ? $nb_avant : $courant - 1;
// nombre de pages après
$apres = $courant <= $nb_pages - $nb_apres ? $nb_apres : $nb_pages - $courant;
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 15 oct. 2006 à 10:24
Salut!
Que la pagination... :-)
C'est à toi de faire l'affichage de tes données! Je l'air pas fait car c'était pas le but de la source et ça change trop d'un cas à l'autre...
@++
R@f
poiutyh
Messages postés3Date d'inscriptionmercredi 5 octobre 2005StatutMembreDernière intervention13 octobre 2006 13 oct. 2006 à 14:11
euh d'accord j'ai a peu près compris le script mais si je colle ca cela ne m'affiche que la pagination ??
Ou se passe l'affichage des données de la tables ?
stef1589
Messages postés44Date d'inscriptiondimanche 19 mars 2006StatutMembreDernière intervention27 mars 2008 31 juil. 2006 à 22:05
super! ca m a beaucoup servi, merci
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 29 avril 2006 à 14:42
Salut!
Oui, en effet, je pense que ton idée est très bien! :)
( de même que la requête de recherche peut être stockée en session en ajoutant juste le LIMIT à chaque fois )
@++
R@f
cs_YeahYeahYeahs
Messages postés13Date d'inscriptionlundi 28 juin 2004StatutMembreDernière intervention22 juin 2005 29 avril 2006 à 00:07
Salut, j'ai cogité un moment sur ta très bonne source (merci).
Le problème c'est la double requête sur chaque page...(ça m'ennuie). De plus,ça m'arrange pas car je pense faire une recherche via un formulaire methode post.
Que penses-tu de l'utilisation de variables de sessions pour stocker le résultat du count et le mot-clé recherché?
Sinon il y a la soluce d'Anthomicro mais ça demande un remaniement complet de la bdd.
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 19 mars 2006 à 16:41
Et ben voilà un pb résolu sans moi, :) :D
@++
R@f
cs_villou
Messages postés2Date d'inscriptionvendredi 21 novembre 2003StatutMembreDernière intervention17 mars 2006 17 mars 2006 à 12:51
Je viens de comprendre qu'il faut mettre le ORDER BY avant LIMIT...
Donc a la place de
// exemple de requete
$result = mysql_query("SELECT * FROM table LIMIT $start, $nb_results_p_page");
il faut mettre
// exemple de requete
$result = mysql_query("SELECT * FROM table order by ID desc LIMIT $start, $nb_results_p_page");
cs_villou
Messages postés2Date d'inscriptionvendredi 21 novembre 2003StatutMembreDernière intervention17 mars 2006 17 mars 2006 à 00:07
Bonsoir !
Vraiment bien ce code, mais j'ai tout de même une petite question. Je suis débutant en php et j'aimerai savoir comment je pourrais faire pour afficher, à l'aide de ce script, les news en sens inverse. Donc le plus grand ID est affiché à la page 1...
Merci pour votre aide !
bebebof
Messages postés9Date d'inscriptionmercredi 19 novembre 2003StatutMembreDernière intervention15 mars 2006 15 mars 2006 à 21:35
Bonsoir !
Un grand bravo à cookiesch pour la rapidité avec laquelle il a résolu mon problème avec ce script !
super sympa !
un excellent script !
A++
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 13 mars 2006 à 20:29
Hum...
Tu arrives à me montrer comment et où tu as mis mon code?
@++
R@f
bebebof
Messages postés9Date d'inscriptionmercredi 19 novembre 2003StatutMembreDernière intervention15 mars 2006 13 mars 2006 à 18:18
bonjour,
url de la page 2 : mapage.php?page=2
J'ai fais des tests et j'ai remarqué que dans la requete (ligne 22) si l'on met pas de WHERE ca fonctionne, et dès que l'on met un WHERE, la première page est ok puis les pages suivantes sont vides. Est-ce normal ? ou un defaut de mon script ? faites le test, vous verrez.
Merci pour votre aide, ce script est bien et je sais par expérience que le plus gros bug est souvent le developpeur!
Merci pour votre réponse !
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 13 mars 2006 à 17:21
Salut!
Quand tu es sur ta page deux, après avoir cliqué, quelle est l'url?
Où as tu mis mon code?
@++
R@f
bebebof
Messages postés9Date d'inscriptionmercredi 19 novembre 2003StatutMembreDernière intervention15 mars 2006 12 mars 2006 à 23:19
bonjour,
pas mal mais j'arrive pas à le faire marcher comme il faut. j'affiche le résultat sur 4 colonnes et 12 par page soit 3 lignes de 4 enregistrements. sur la première page c'est ok, mais dès que je clique sur page 2 j'ai plus rien...
Quelqu'un à une solution ?
Merci !
cs_DyMoN
Messages postés6Date d'inscriptionlundi 2 mai 2005StatutMembreDernière intervention 9 juin 2005 26 janv. 2006 à 15:00
C'est ce que j'ai fait ,
Si yavait plus souvent des sources bien presentéés et bien explicite comme celle ci sa serait cool.
merci encore..
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 25 janv. 2006 à 20:32
Salut!
Include n'est pas une fonction dangereuse en soi quand on est sûr de la page qu'elle appelle.
Par exemple: include('pages.php'); n'est pas du tout dangereux...
Mais si tu fais:
include( $_GET['page'] );
Là, c'est dangereux car si quelqu'un appelle ta page comme ceci:
index.php?page=http://www.unautresite.com/script.php Et ben ca exécutera le script qu'il veut. On appelle ca la faille des includes!
Si tu veux faire un truc genre pseudo frames, tu passes une valeur dans l'url pour page ( genre: news, contacts, livreor ) et selon cette valeur tu inclut la page que tu veux ( via un switch, par exemple ).
Ca répond à ta question?
@++
R@f
cs_DyMoN
Messages postés6Date d'inscriptionlundi 2 mai 2005StatutMembreDernière intervention 9 juin 2005 25 janv. 2006 à 18:38
C bon j'ai reussi à l'integrer
je n'avait pas vu la ligne:
// exemple de requete
$result = mysql_query("SELECT * FROM table LIMIT $start, $nb_results_p_page");
C'est ce qui posé probleme avec ma requete.
Merci pour ton code tres bien presenté et qui m'aide enormement.
Derniere question:
J'ai mis ce bout de con dans un fichier
et je l'ai inclu dans ma page avec la fonction include();
J'ai entendu parlé que cette fonction etait dangereuse.
Y'a til une autre façon d'apeller cette page ?
Je c'est que sa sort du contexte mais bon..
Encore merci
cs_DyMoN
Messages postés6Date d'inscriptionlundi 2 mai 2005StatutMembreDernière intervention 9 juin 2005 25 janv. 2006 à 17:59
Ceci est trés bien détaillé c'est exactement ce qu'il me faut mais le probleme est que :
Comment l'integrer a ma page ?
Je l'ai integre cela apparait parfaitement mais pas le resultat.
a quel endroit placer ce code avant laffichage de mon tableau?
Je suis bloqué mercide m'aider.
petitstitch
Messages postés4Date d'inscriptiondimanche 22 février 2009StatutMembreDernière intervention22 février 2009 20 déc. 2005 à 17:18
Excellent !!! ;o)
cs_irus
Messages postés4Date d'inscriptionvendredi 23 avril 2004StatutMembreDernière intervention26 octobre 2005 25 oct. 2005 à 13:05
Merci pour ton code tres simple bien explique et efficace @+
cs_irus
Messages postés4Date d'inscriptionvendredi 23 avril 2004StatutMembreDernière intervention26 octobre 2005 25 oct. 2005 à 12:33
Merci pour ton code tres simple bien explique et efficace @+
cs_critou
Messages postés4Date d'inscriptionmercredi 28 septembre 2005StatutMembreDernière intervention 6 janvier 2006 29 sept. 2005 à 18:08
J'ai un script ListePhotos.php qui affiche sous forme de tableau des champs d'une base de données et j'aimerais afficher ce tableau sur plusieurs pages. Par exemple tout les 5 enregistrement je change de page.
cs_BeCaSiNe
Messages postés80Date d'inscriptiondimanche 23 février 2003StatutMembreDernière intervention16 juin 2008 29 sept. 2005 à 18:02
Bah explique nous t'es requete !
Ca va beaucoup aider !
cs_critou
Messages postés4Date d'inscriptionmercredi 28 septembre 2005StatutMembreDernière intervention 6 janvier 2006 29 sept. 2005 à 18:01
Comment puis-je lier mon script avec celui là ou où faut-il que je l'intègre?
Merci d'avance
cs_BeCaSiNe
Messages postés80Date d'inscriptiondimanche 23 février 2003StatutMembreDernière intervention16 juin 2008 29 sept. 2005 à 17:56
$_SERVER['SCRIPT_NAME'] c'est le nom de la page en cour
cs_critou
Messages postés4Date d'inscriptionmercredi 28 septembre 2005StatutMembreDernière intervention 6 janvier 2006 29 sept. 2005 à 17:54
Bonjour,
Juste une petie question de à quoi fait référence $_SERVER['SCRIPT_NAME']?
Ton script marche très bien merci beacoup mais je n'arrive pas à l'intégrer dans mon script existant.
Merci de ta réponse
Critou
electroweb
Messages postés9Date d'inscriptionjeudi 23 janvier 2003StatutMembreDernière intervention29 avril 20091 25 août 2005 à 12:11
Merci pour ce script. Il est propre et agréable à lire. Je suis en train de le mettre dans une classe.
Bravo et bonne continuation.
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 24 août 2005 à 12:04
:) Oki doki, merci pr les infos!
@++
R@f
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 24 août 2005 à 12:01
En fait c'est un champ qui sera toujours incrémenté inversement par rapport à l'autoincrément normal (pour que les messages les plus récents remontent et soient affichés en premiers). Lorsque je supprime un message portant l'id_class 2 par exemple, je supprime un id unique, il y aura donc un trou dans la table. Pour pallier à ça j'update tous les id_class supérieurs à 2 et je les décrémente de 1, et hop plus de trou dans le champ id_class vu que je me sers de ce champ uniquement pour classer mes données et les récupérer. Je me sers juste de l'id unique pour identifier les topics c'est tout.
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 24 août 2005 à 11:57
Dsl d'ête lourd (lol) mais je pige pas torp comment tu gère ce deuxième champ...
@++
R@f
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 24 août 2005 à 11:31
non, d'où le deuxième champ id_class, et plus de problème.
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 24 août 2005 à 11:29
Salut!
Vi, mais par contre, ca pose pb dès que tu supprimes un truc parce parlà...
@++
R@f
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 24 août 2005 à 11:27
un exemple (je vais prendre celui de mon forum)
tu as une table avec des id autoincrémentés (vu que les topics ont chacun un ID unique), j'ai rajouté un champ "id_class" qui lui est dans le sens inverse de l'id, ce qui évite de trier la table en ID DESC, mais en id_class ASC (bref je change pas ça). Ensuite quand j'ai besoin de la page 1 bah je fais ça par exemple :
SELECT machin,truc FROM table WHERE id_class BETWEEN 0 AND 20 (avec 20 enregistrements par page)
tu mets un index sur le champ id_class et t'as un forum qui ira aussi vite que t'ai 1000 ou 100000 enregistrements (enfin presque mais on se comprend, tandis qu'avec LIMIT plus t'auras d'enregistrements et plus ce sera lent).
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 24 août 2005 à 11:22
Il faudrait améliorer ca comment?
@++
R@f
cs_Anthomicro
Messages postés9433Date d'inscriptionmardi 9 octobre 2001StatutMembreDernière intervention13 avril 20078 24 août 2005 à 11:10
Salut,
suite à la dernière source en date sur PHPCS pour réaliser ça je suis allé consulter cette source meilleure globalement, mais toujours à base de LIMIT :-( ce qui, sur une table comportant pas mal d'enregistrements, n'est pas bon.
pmthelord
Messages postés38Date d'inscriptionsamedi 4 novembre 2000StatutMembreDernière intervention13 novembre 2008 25 avril 2005 à 21:53
Bah ouais c'est cale problème ... avec interbase c'est lourd car les requete du style "SELECT * FROM TABLE limit ..." n'existe pas :s
coockiesch
Messages postés2268Date d'inscriptionmercredi 27 novembre 2002StatutMembreDernière intervention13 septembre 20134 25 avril 2005 à 19:02
Salut!
Je comprends pas ce que tu veux faire, l'affichage est là... Tu le veux d'une autre façon?
Je connais pas interbase, dsl...
@++
R@f
pmthelord
Messages postés38Date d'inscriptionsamedi 4 novembre 2000StatutMembreDernière intervention13 novembre 2008 25 avril 2005 à 17:53
et comment eske l'on fait pour le melanger avec l'affichage de nos resultat par exemple ???,
paceke la ya ke le nombre de page et pa laffichage ... ms je ne c po ou le mettre ou bien sil faut enregistrer ce code telle une fonction ou bien si on peu l'utiliser direct ds le fichier comme ca ...
merci de me repondre a bientot
pmthelord
Messages postés38Date d'inscriptionsamedi 4 novembre 2000StatutMembreDernière intervention13 novembre 2008 25 avril 2005 à 17:46
esque tu pourrai me faire le meme script avec de l'interbase stp ???? :'(
moi je galere tro tro !!!! ca marche nikel en sql ms des ke tu passe avec interbase c la misere !!!!
alor si qqun peu maider se serai cool ;)
cs_kalamya
Messages postés4Date d'inscriptionmardi 4 février 2003StatutMembreDernière intervention 1 août 2005 26 janv. 2005 à 14:25
Carrément excellent !
Enfin un exemple clair sur la pagination qui fonctionne à merveille. Merci beaucoup !
cs_mfaraday
Messages postés144Date d'inscriptionvendredi 18 avril 2003StatutMembreDernière intervention 4 janvier 2010 29 juin 2004 à 20:04
Salut juste une petite question...
Pour afficher la dernière page... j'avais un petit problème que j'air résolu come ça :
8 avril 2013 à 14:03
j'arrive un peu tard :p
Excellent mais cependant il y a un petit problème. Exemple, j'ai 8 pages en tout, et quand j'arrive à la 8eme page, ça continue de paginer à la 9eme, 10eme etc.. et bien entendu la 9eme, 10eme etc.. sont vides.
Ca aurait été bien de pouvoir mettre un système de blocage quand ça arrive à la fin.
27 juil. 2010 à 13:24
Merci coockiesch,
Juste une petite information : en pgsql on change
"SELECT * FROM table LIMIT $start, $nb_results_p_page"
en
"SELECT * FROM table LIMIT $nb_results_p_page OFFSET $start"
5 mai 2010 à 16:12
16 mai 2007 à 05:21
Moi j'ai ajouter un peu de style sur l'affichage et j'utilise aussi mysqli au lieu de mysql... Je vous en fait donc part! j'espère que tout sera beau... c'est la première fois que je répond à un commentaire! :o))
$nb_results_p_page = 1; // nombre de résultats par page
$nb_avant = 3; // nombre de page avant la page courante
$nb_apres = 3; // nombre de page après la page courante
$premiere = 1; // aficher le lien "première page" (1 ou 0)
$derniere = 1; // afficher le lien "dernière page" (1 ou 0)
$courant = empty($_GET['page']) ? 1 : $_GET['page']; // page
$start = ($courant - 1) * $nb_results_p_page; // start (requete mysql)
// comptage du nombre de lignes de la base
$sqlSelectUser = "SELECT count(id_user) FROM user";
$resSelectUser = $mysqli->query($sqlSelectUser);
$nb_user = $resSelectUser->fetch_array();
// nombre de lignes
$nb_results = $nb_user[0];
// nombre total de pages
$nb_pages = ceil($nb_results / $nb_results_p_page);
// nombre de pages avant
$avant = $courant > ($nb_avant + 1) ? $nb_avant : $courant - 1;
// nombre de pages après
$apres = $courant <= $nb_pages - $nb_apres ? $nb_apres : $nb_pages - $courant;
echo '
';
// première page
if($premiere && $courant > 1)
echo '<li>[' . $_SERVER['SCRIPT_NAME'] . ' Première] </li>';
else
echo '<li class="disablepage">Première</li>';
// page précédente
if($courant > 1)
echo '<li>[' . $_SERVER['SCRIPT_NAME'] . '?page=' . ($courant - 1) . ' Précédente] </li>';
else
echo '<li class="disablepage">Précédente</li>';
// affichage des numéros de page
for($i = $courant - $avant; $i <= $courant + $apres; $i++)
{
// page courante
if($i == $courant)
echo '<li class="currentpage">' . $i . '</li>';
else
echo '<li>[' . $_SERVER['SCRIPT_NAME'] . '?page=' . $i . ' ' . $i . '] </li>';
}
// page suivante
if($courant < $nb_pages)
echo '<li>[' . $_SERVER['SCRIPT_NAME'] . '?page=' . ($courant + 1) . ' Suivante] </li>';
else
echo '<li class="disablepage">Suivante</li>';
if($derniere && ($courant < $nb_pages))
echo '<li>[' . $_SERVER['SCRIPT_NAME'] . '?page=' . $nb_pages . ' Dernière] </li>';
else
echo '<li class="disablepage">Dernière</li>';
echo '
Page '.$courant.' sur '.$nb_pages.'
';
===============
CSS
===============
.pagination {padding: 2px;}
.pagination ul {margin: 0; padding: 0; text-align: left; font-size: 16px;}
.pagination li {list-style-type: none; display: inline; padding-bottom: 1px;}
.pagination a, .pagination a:visited {padding: 0 5px; border: 1px solid rgb(0,51,102); text-decoration: none; color: #2e6ab1;}
.pagination a:hover, .pagination a:active {border: 1px solid #2b66a5; color: #000; background-color: lightblue;}
.pagination li.currentpage {font-weight: bold; padding: 0 5px; border: 1px solid navy; background-color: rgb(0,51,102); color: #FFF;}
.pagination li.disablepage {padding: 0 5px; border: 1px solid rgb(145,145,145); color: #929292;}
.pagination li.currentpage, .pagination li.disablepage { /*IE 6 and below. Adjust non linked LIs slightly to account for bugs*/ margin-right: 5px; padding-right: 5px;}
15 oct. 2006 à 10:24
Que la pagination... :-)
C'est à toi de faire l'affichage de tes données! Je l'air pas fait car c'était pas le but de la source et ça change trop d'un cas à l'autre...
@++
R@f
13 oct. 2006 à 14:11
Ou se passe l'affichage des données de la tables ?
31 juil. 2006 à 22:05
29 avril 2006 à 14:42
Oui, en effet, je pense que ton idée est très bien! :)
( de même que la requête de recherche peut être stockée en session en ajoutant juste le LIMIT à chaque fois )
@++
R@f
29 avril 2006 à 00:07
Le problème c'est la double requête sur chaque page...(ça m'ennuie). De plus,ça m'arrange pas car je pense faire une recherche via un formulaire methode post.
Que penses-tu de l'utilisation de variables de sessions pour stocker le résultat du count et le mot-clé recherché?
Sinon il y a la soluce d'Anthomicro mais ça demande un remaniement complet de la bdd.
19 mars 2006 à 16:41
@++
R@f
17 mars 2006 à 12:51
Donc a la place de
// exemple de requete
$result = mysql_query("SELECT * FROM table LIMIT $start, $nb_results_p_page");
il faut mettre
// exemple de requete
$result = mysql_query("SELECT * FROM table order by ID desc LIMIT $start, $nb_results_p_page");
17 mars 2006 à 00:07
Vraiment bien ce code, mais j'ai tout de même une petite question. Je suis débutant en php et j'aimerai savoir comment je pourrais faire pour afficher, à l'aide de ce script, les news en sens inverse. Donc le plus grand ID est affiché à la page 1...
Merci pour votre aide !
15 mars 2006 à 21:35
Un grand bravo à cookiesch pour la rapidité avec laquelle il a résolu mon problème avec ce script !
super sympa !
un excellent script !
A++
13 mars 2006 à 20:29
Tu arrives à me montrer comment et où tu as mis mon code?
@++
R@f
13 mars 2006 à 18:18
url de la page 2 : mapage.php?page=2
J'ai fais des tests et j'ai remarqué que dans la requete (ligne 22) si l'on met pas de WHERE ca fonctionne, et dès que l'on met un WHERE, la première page est ok puis les pages suivantes sont vides. Est-ce normal ? ou un defaut de mon script ? faites le test, vous verrez.
Merci pour votre aide, ce script est bien et je sais par expérience que le plus gros bug est souvent le developpeur!
Merci pour votre réponse !
13 mars 2006 à 17:21
Quand tu es sur ta page deux, après avoir cliqué, quelle est l'url?
Où as tu mis mon code?
@++
R@f
12 mars 2006 à 23:19
pas mal mais j'arrive pas à le faire marcher comme il faut. j'affiche le résultat sur 4 colonnes et 12 par page soit 3 lignes de 4 enregistrements. sur la première page c'est ok, mais dès que je clique sur page 2 j'ai plus rien...
Quelqu'un à une solution ?
Merci !
26 janv. 2006 à 15:00
Si yavait plus souvent des sources bien presentéés et bien explicite comme celle ci sa serait cool.
merci encore..
25 janv. 2006 à 20:32
Include n'est pas une fonction dangereuse en soi quand on est sûr de la page qu'elle appelle.
Par exemple: include('pages.php'); n'est pas du tout dangereux...
Mais si tu fais:
include( $_GET['page'] );
Là, c'est dangereux car si quelqu'un appelle ta page comme ceci:
index.php?page=http://www.unautresite.com/script.php
Et ben ca exécutera le script qu'il veut. On appelle ca la faille des includes!
Si tu veux faire un truc genre pseudo frames, tu passes une valeur dans l'url pour page ( genre: news, contacts, livreor ) et selon cette valeur tu inclut la page que tu veux ( via un switch, par exemple ).
Ca répond à ta question?
@++
R@f
25 janv. 2006 à 18:38
je n'avait pas vu la ligne:
// exemple de requete
$result = mysql_query("SELECT * FROM table LIMIT $start, $nb_results_p_page");
C'est ce qui posé probleme avec ma requete.
Merci pour ton code tres bien presenté et qui m'aide enormement.
Derniere question:
J'ai mis ce bout de con dans un fichier
et je l'ai inclu dans ma page avec la fonction include();
J'ai entendu parlé que cette fonction etait dangereuse.
Y'a til une autre façon d'apeller cette page ?
Je c'est que sa sort du contexte mais bon..
Encore merci
25 janv. 2006 à 17:59
Comment l'integrer a ma page ?
Je l'ai integre cela apparait parfaitement mais pas le resultat.
a quel endroit placer ce code avant laffichage de mon tableau?
Je suis bloqué mercide m'aider.
20 déc. 2005 à 17:18
25 oct. 2005 à 13:05
25 oct. 2005 à 12:33
29 sept. 2005 à 18:08
29 sept. 2005 à 18:02
Ca va beaucoup aider !
29 sept. 2005 à 18:01
Merci d'avance
29 sept. 2005 à 17:56
29 sept. 2005 à 17:54
Juste une petie question de à quoi fait référence $_SERVER['SCRIPT_NAME']?
Ton script marche très bien merci beacoup mais je n'arrive pas à l'intégrer dans mon script existant.
Merci de ta réponse
Critou
25 août 2005 à 12:11
Bravo et bonne continuation.
24 août 2005 à 12:04
@++
R@f
24 août 2005 à 12:01
24 août 2005 à 11:57
@++
R@f
24 août 2005 à 11:31
24 août 2005 à 11:29
Vi, mais par contre, ca pose pb dès que tu supprimes un truc parce parlà...
@++
R@f
24 août 2005 à 11:27
tu as une table avec des id autoincrémentés (vu que les topics ont chacun un ID unique), j'ai rajouté un champ "id_class" qui lui est dans le sens inverse de l'id, ce qui évite de trier la table en ID DESC, mais en id_class ASC (bref je change pas ça). Ensuite quand j'ai besoin de la page 1 bah je fais ça par exemple :
SELECT machin,truc FROM table WHERE id_class BETWEEN 0 AND 20 (avec 20 enregistrements par page)
tu mets un index sur le champ id_class et t'as un forum qui ira aussi vite que t'ai 1000 ou 100000 enregistrements (enfin presque mais on se comprend, tandis qu'avec LIMIT plus t'auras d'enregistrements et plus ce sera lent).
24 août 2005 à 11:22
@++
R@f
24 août 2005 à 11:10
suite à la dernière source en date sur PHPCS pour réaliser ça je suis allé consulter cette source meilleure globalement, mais toujours à base de LIMIT :-( ce qui, sur une table comportant pas mal d'enregistrements, n'est pas bon.
25 avril 2005 à 21:53
25 avril 2005 à 19:02
Je comprends pas ce que tu veux faire, l'affichage est là... Tu le veux d'une autre façon?
Je connais pas interbase, dsl...
@++
R@f
25 avril 2005 à 17:53
paceke la ya ke le nombre de page et pa laffichage ... ms je ne c po ou le mettre ou bien sil faut enregistrer ce code telle une fonction ou bien si on peu l'utiliser direct ds le fichier comme ca ...
merci de me repondre a bientot
25 avril 2005 à 17:46
moi je galere tro tro !!!! ca marche nikel en sql ms des ke tu passe avec interbase c la misere !!!!
alor si qqun peu maider se serai cool ;)
26 janv. 2005 à 14:25
Enfin un exemple clair sur la pagination qui fonctionne à merveille. Merci beaucoup !
29 juin 2004 à 20:04
Pour afficher la dernière page... j'avais un petit problème que j'air résolu come ça :
if($courant + $apres < $nb_pages && $courant != $nb_pages)
mon problème était que je pouvais pas cliquer sur dernière quand j'étais à la page 8 sur 9...
Florian
28 juin 2004 à 01:38
Et comment utile pour mon site de centaine d'items pour ne pas exploser la bande passante inutilement...
Merci infiniement pour ce code à la google :d
27 juin 2004 à 16:27
@++
R@f
27 juin 2004 à 16:21
Il y a une faute !!
Ta oublié $ à la preimiere ligne !!
27 juin 2004 à 16:17