
Affichage page par page
Information sur le code source PHP
Codes en PHP de l'auteur :
[57] sources
Voir
Enregistrement le 05 Sept 2004 - Vu 28224 fois
Information sur le code source
Affichage page par page. Lecture à partir d'une base MySQL. Script complet.
Code Source
.01
.02
.03
.04
.05
.06
.07
.08
.09
.10
.11
.12
.13
.14
.15
.16
.17
.18
.19
.20
.21
.22
.23
.24
.25
.26
.27
.28
.29
.30
.31
.32
.33
.34
.35
.36
.37
.38
.39
.40
.41
.42
.43
.44
.45
.46
.47
.48
.49
.50
.51
.52
.53
.54
.55
.56
.57
.58
.59
.60
.61
.62
.63
.64
.65
.66
.67
.68
.69
.70
.71
.72
.73
.74
.75
.76
.77
.78
.79
.80
.81
|
|
<?php
/******************************************************************************/
/* */
/* __ ____ */
/* ___ / / ___ / __/__ __ _____________ ___ */
/* / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-< */
/* / .__/_//_/ .__/___/\___/\_,_/_/ \__/\__/___/ */
/* /_/ /_/ */
/* */
/* */
/******************************************************************************/
/* */
/* Titre : Affichage page par page */
/* */
/* URL : http://www.phpsources.org/scripts47-PHP.htm */
/* Auteur : KOogar */
/* Date édition : 05 Sept 2004 */
/* Website auteur : http://www.phpsources.org */
/* */
/******************************************************************************/
$page = isset($_GET['page']) ? $_GET['page'] : '';
// Prepare le requete MySql
$requete = "SELECT * from votretable";
$ret = mysql_query($requete);
// Variable nombre d'enreg par page
$limit=4;
if($debut==""){$debut=0;}
$debut=$page*$limit;
// Compte le nombre de champ
$nb_total=mysql_num_rows($ret);
// Requete
$limite=mysql_query("$requete limit $debut,$limit");
// Affiche le page par page avec ses liens
if ($page>0) {
$precedent=$page-1;
echo "<a href=\"$PHP_SELF?page=$precedent\">PRECEDENT</a>";
}
$i=0;
$j=1;
if($nb_total>$limit) {
while($i<($nb_total/$limit)) {
if($i!=$page){echo "<a href=\"$PHP_SELF?page=$i\">$j</a> ";}
else { echo "<b>$j</b>";}
$i++;$j++;
}
}
if($debut+$limit<$nb_total) {
$suivant=$page+1;
echo "<a href=\"$PHP_SELF?page=$suivant\">SUIVANT</a>";
}
//Affichage le contenu de votre table
//avec une limite, dans l'exemple $limit est à 4
$limit_str = "LIMIT ". $page * $limit .",$limit";
$result = mysql_query("
SELECT *
FROM votretable
ORDER BY id
ASC $limit_str");
while ($row =mysql_fetch_array ($result) )
{
// affiche les different champs
echo"$row[nomduchamp]";
echo"<br />";
}
?>
|
Fonctions du code source
Fonctions php / mysql PHP
- isset : Détermine si une variable est affectée - (PHP 4, PHP 5)
- mysql_query : Envoie une requête à un serveur MySQL - (PHP 4, PHP 5, PECL mysql:1.0)
- mysql_num_rows : Retourne le nombre de lignes d'un résultat MySQL - (PHP 4, PHP 5, PECL mysql:1.0)
- echo : Affiche une chaîne de caractères - (PHP 4, PHP 5)
- mysql_fetch_array : - (PHP 4, PHP 5, PECL mysql:1.0)
|
|
le 18 Oct 2005 à 00:24:00
|
Bonjour , je cherche une ame charitable pour me l'adapter a ma page php

Merci d'avance ^^
|
|
le 18 Oct 2005 à 13:55:00
|
Oo) Il y a un forum pour ce genre de problème :
http://www.phpsources.org/forums-php-sources.htm
|
|
le 25 Oct 2005 à 13:45:00
|
bon a priori un collegue a réussi , cependant il y a une amélioration a faire mais je vois pas , car si par exemple il y a moins de 4 enregistrements il affiche quand meme PRECEDENT 1 - 2 - 3 - 4 SUIVANT comment régler ce probleme merci d'avance
|
|
le 28 Oct 2005 à 18:13:00
|
Bonjour,
J'ai une erreur sur la ligne:
if($debut==""){$debut=0;}
Notice: Undefined variable: debut in d:\easyphp\www\toulouse_original\1.php on line 9
Une solution ? merci
|
|
le 29 Oct 2005 à 06:18:00
|
Undefined variable: debut... ben defini la variable en début de script !!
|
|
le 11 Nov 2005 à 12:36:00
|
Salut,
Il marche tres bien ce petit script !!!
il faut juste recuperer la variable page
$page = isset($_GET['page']) ? $_GET['page'] : '';
mais sinon il tourne au poil !!!
Merci
|
|
le 27 Nov 2005 à 04:24:00
|
C'est corrigé, le script est compatible global à OFF
|
|
le 11 Déc 2005 à 03:30:00
|
Tres tres bon script, apres 2-3 adaptations ca marchait parfaitement. Merci
|
|
le 08 Mars 2007 à 20:53:00
|
WOW code d'une utilité absolue, MERCI ÉNORMÉMENT wow
|
|
le 08 Mars 2007 à 20:54:00
|
Petit obli ajouté: if(isset($debut) && $debut=="") { $debut=0; }
|
|
le 09 Mars 2007 à 12:42:00
|
Si si ca y est ligne 9, c'est vrai que cela devrait etre au debut, mais ca doit s'écrire :
if(!isset($debut)) $debut=0;
ce qui veux dire: si $debut n'est pas declaré (ce qui est notre cas) alors mettre 0 dans la variable $debut
Je vais aranger un peu le code ;-)
|
|
le 20 Mars 2007 à 12:35:00
|
Super code !!! Un grand merci à Laurent !
J'ai rajouté des espaces manquant pour que "PRECEDENT", "SUIVANT" et le numéro de la page en cours ne soient plus collés aux numéros adjacents.
Merci encore :o)
|
|
le 02 Avril 2007 à 18:32:00
|
salut et merci laurent pour ce scprit , j'ai une petite erreur sans doute bete qui traine, mais qui me fait perdre du temps si quelqu'un au passage pourrai me renseigner sur la cause du probleme , merci
____
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\"" on line 14
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\"" on line 43
|
|
le 03 Avril 2007 à 00:57:00
|
Regarde voir, si tu as bien une colonnes dans ta table dans ta base de donnée et que tous les colonnes sont existantes
|
|
le 28 Oct 2007 à 15:13:00
|
Bonjour à tous,
J'espère que quelqu'un pourra m'aider au sujet de ce script car chez moi il ne fonctionne pas. J'ai aussi essayé avec les sessions et le passage des variables dans l'URL rien n'y fait j'ai toujour la même erreur :
Au secours...
J'ai une saisie de critères par un formulaire POST qui me rends
$_POST['NOM']
$_POST['DISPONIBILITE']
$_POST['FAMILLE']
Ce formulaire appelle une page affiche_critères1.php
Dont le rôle est de traiter les options, envoyer la requête et faire afficher les données.
Je voudrais les faire afficher page par page. Le premier affichage avec la limite ici de 4 fonctionne très bien. Aussitôt que je clique sur le lien suivant j'ai la catastrophe
Notice: Undefined index: NOM in C:\Program Files\EasyPHP 2.0b1
Notice: Undefined index: DISPONIBLE in C:\Program Files\EasyPHP 2.0b1
Notice: Undefined index: FAMILLE in C:\Program Files\EasyPHP 2.0b1
Je précise que la CASSE est bonne que le var_dump($_POST) me rend les bonnes valeur.
|
|
le 28 Oct 2007 à 15:34:00
|
mettez les globals de votre serveur a OFF -->> fichier php.ini -->> register_globals = Off
ou
peut-etre utiliser correction la maniere de recuperer les globals ?
-->>
$NOM = isset($_POST['NOM']) ? $_POST['NOM'] : '';
|
|
le 28 Oct 2007 à 16:03:00
|
Mes register_globals sont à off
quant à la correction fonctionne pas non plus.
Je suis à cours d'idées et pourtant je dois pas être le seul à vouloir faire afficher un BD page par page en ayant comme sélecteur dans la requête des variable post?
En tous cas merci
|
|
le 28 Oct 2007 à 16:46:00
|
et en désactivant les notices ?? -->> php.ini
-->>
error_reporting = E_ALL & ~E_NOTICE
|
|
le 28 Oct 2007 à 17:11:00
|
Je veux bien essayer mais je ne sais pas comment désactiver ces notices. J'ai fait une
recherche dans php.ini et il n'a pas trouvé error_reporting? Et à quoi sert cette directive?
|
|
le 28 Oct 2007 à 17:30:00
|
Cette directive désactive les notices d'erreurs, ce qui permettra au script de continuer
-->> ajouter la ligne a votre fichier de configuration (easyphp.ini si mes souvenirs sont bons..)
error_reporting = E_ALL & ~E_NOTICE
-->> rebootez votre serveur.
Si cela ne marche toujours pas, je vous conseille soit d'utiliser Wamp et/ou de tester en ligne pour voir si votre probleme n'est pas du à un probleme de script.
|
|
le 28 Oct 2007 à 17:46:00
|
OK j'ai testé avec le easyphp.ini modifié je n'ai aucun changement. D'ailleurs même sans cette modification, le script continuait de s'exécuter mais sans les résultats escomptés c'est à dire pas d'affichage des données suivantes.
En tous cas merci de votre aide. J'abuse encore un peu étant tout débutant je suppose que Wamp est un débboguer? Ou sagit*il d'autre chose?
|
|
le 28 Oct 2007 à 18:36:00
|
Wamp est un serveur web que beaucoup préfère à Easyphp car ses fonctionnalités sont bien plus souples et etendues. Je vous conseille de désinstaller easyphp avant d'installer Wamp si vous êtes interressé par ce serveur.
http://www.phpsources.org/ressources-wamp-php114.htm
|
|
le 20 Nov 2007 à 16:51:00
|
Bonjour ,
j'ai eu meme problem que IMMO
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-7\www\site_00\testact.php on line 315
LA LINE 315 est :
$nb_total=mysql_num_rows($ret);
Est ce quelqu'un voit ou il peut y'avoir le problem ?
|
|
le 20 Nov 2007 à 17:37:00
|
problem est resolu j'ai du faire quelque changement au niveau du scripte le personalisé selon mé besoin, sinon il marche parfaitement et je bravo a celui qu'il a cree
|
|
le 31 Mars 2008 à 15:36:00
|
bonjour à tous
pourquoi j'ai toujours ce genre d'erreur par ce script:
Notice: Undefined variable: PHP_SELF in c:\www\site\admin\admin\admin_membres\test_1.php on line 45
|
|
le 17 Mai 2008 à 14:19:00
|
merci pour ce script je vais tester
|
|
le 24 Aout 2008 à 01:27:00
|
Merci bien pour ce script, exactement ce que j'attendais, très facile à utiliser, je l'ai modifié à ma sauce et il fonctionne nikel!!!
Beaucoup de commentaires clairs, encore merci et félicitations!
|
|
le 03 Sept 2008 à 10:38:00
|
Bonjour
Y'aurai t'il un script du même genre pour un SGBD Access, j’utilise le pilote ODBC.
J’ai essayé d’adapté a mon code avec se script mais je n’y arrive pas.
Une info dessus ?please help me
|
|
le 03 Sept 2008 à 10:48:00
|
Bonjour
Y'aurai t'il un script du même genre pour un SGBD Access, j’utilise le pilote ODBC.
J’ai essayé d’adapté a mon code avec se script mais je n’y arrive pas.
Une info dessus ?please help me
|
|
le 27 Sept 2008 à 13:07:00
|
bonjour à tous
voila je viens d'essayer ce code il est très bien sauf que quand je navigue entre les pages mes enregistrement ne s'affiche pas
à l'execution dans la première page les résultats sont affichés si je vais sur une autre page elle est vide malgré que j'ai plein d'enregistrement dans ma base et meme si je retourne sur la première page rien ne s'affiche
|
|
le 27 Oct 2008 à 18:09:00
|
salut!
svp ce script n'as pas marché avec moi sachant que j'ai le logiciel easy-php version1.1.8
|
|
le 18 Nov 2008 à 11:12:00
|
Bonjour,
Une réponse pour ceci?
bonjour à tous
pourquoi j'ai toujours ce genre d'erreur par ce script:
Notice: Undefined variable: PHP_SELF in c:wwwsiteadminadminadmin_membrestest_1.php on line 45
|
|
le 18 Nov 2008 à 16:48:00
|
Pour ceux qui ont l'option PHP register_globals = Off il faut remplacer $PHP_SELF par $_SERVER['PHP_SELF']
|
|
le 18 Fév 2009 à 17:30:00
|
Bonjour, je viens d'essayer de faire fonctionner ce script, mais apparemment il ya une erreur sur la requete qui affiche le contenu de la table. Il n'accepte pas le "ORDER BY id
ASC $limit_str" si j'enleve, il m'affiche la table, mais malheureusement pas les numéros de pages.
Si quelqu'un aurait une idée et merci pour le script.
|
|
le 06 Mars 2009 à 12:30:00
|
Le scripte marche bien. Par contre lorqu'on fait une recherche par critère il affiche bien les résultats attendus, mais avec tous les liens. Par exemple j'ai fait une recherche j'obtiens 1 seul engregistement. normalement l'affichage doit être à 1 sans lien. Chez moi il m'affiche 1,2,etc... avec les différents liens. Il me semble qu'il n'est pas adapté pour des recherches affinées. Normalement quand il y a un seul 1 seul enregistrement et que la limte est à 3 par exemple les liens suivants et précédents doivent disparaîtrent. Merci de m'aider s'il vous plaît.
Offres d'emploi
Librairie
Langages de programmation
La librairie est ouverte à tous et elle est accès principalement sur les langages PHP et MySQL.
Vous trouverez aussi d'autres langages de programmation tel que le CSS, HTML, AJAX, ASP..
Plus de 300 références facilement accessibles. Visiter