IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

SQL-PHP : Pagination [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Inscrit en
    Juin 2009
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 17
    Par défaut SQL-PHP : Pagination
    Bonjour, j'ai un tableau qui afficher 50 données d'une base de donnée, je cherche a faire une pagination pour pouvoir naviguer directement dans cette base de donnée depuis ma page web.

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    mysql_connect("","","");
    mysql_select_db('track');
     
    $reponse = mysql_query ( " 
    select * from pres 
    where ip = '".$_GET[ 'pres_ip' ]."' 
      and date_req = '".$_GET[ 'pres_date' ]."' 
    order by date_req desc limit 0,50 
    " );
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    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
     
    echo '<table bgcolor="#FFFFFF" border=1 width="2000">
    <tr>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">date_req</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">ip</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">sess</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">stamp</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">type_dem</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">pax</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">cod_veh</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">cod_cab</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">lign_all</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">date_dep</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">hor_dep</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">lign_ret</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">date_ret</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">hor_ret</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">agent</font></th>
    <th bgcolor="#272B6B" align="center"><font color="#FFFFFF">referer</font></th>';
     
    echo '</tr>';
     
    while ($donnees_pres = mysql_fetch_array($reponse)) {
     echo '<tr>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'date_req' ].'</td>
      <td bgcolor="#CCCCCC" align="center"><a href="index.php?ipselected='.$donnees_pres[ 'ip' ].'">'.$donnees_pres[ 'ip' ].'</a></td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'sess' ].'</td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'stamp' ].'</td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'type_dem' ].'</td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'pax' ].'</td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'cod_veh' ].'</td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'cod_cab' ].'</td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'lign_all' ].'</td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'date_dep' ].'</td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'hor_dep' ].'</td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'lign_ret' ].'</td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'date_ret' ].'</td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'hor_ret' ].'</td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'agent' ].'</td>
      <td bgcolor="#CCCCCC" align="center">'.$donnees_pres[ 'referer' ].'</td>
     </tr>';
    Merci d'avance a ceux/celles qui pourront m'aider

  2. #2
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    Bonjour

    Un tutoriel concernant ton problème est présent dans la partie PHP de developpez et devrait t'expliquer la logique à suivre!

  3. #3
    Membre averti
    Inscrit en
    Juin 2009
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 17
    Par défaut
    merci bien
    une dernière petite info,
    je fais la pagination sous forme de menu déroulant (ne me demande pas pourquoi, les ordres sont les ordres ^^)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    echo '<form method="GET">
        <b>Page : </b>
        <select name="page" onchange="this.form.submit()">';
    	if($_GET['page']) $page=$_GET['page'];
    	for($i=1; $i<=$nombreDePages; $i++) {
    		if($i==$page) echo '<option value="'.$i.'" selected>'.$i.'</option>';
    		else echo '<option value="'.$i.'">'.$i.'</option>';
    	}
    echo'</select></form>';
    ça ça marche bien, mais il faudrait en fait que je l'utilise sur une page précise ou je dois récupérer 2 $_GET.
    Du coup, quand je change la page, ça me met bien la page choisie, mais ça me redirige vers l'index ( qui affiche autre chose et qui utilise le même système de pagination ).
    En fait, il faudrait que ma barre d'adresse ressemble a ça :
    ../index.php?pres_date=2009-06-24&pres_ip=172.20.28.16&page=2
    je me suis dis qu'en remplacant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <select name="page" onchange="this.form.submit()">';
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <select name="pres_date="'.$_GET['pres_date'].'"&pres_ip="'.$_GET['pres_ip'].'"&page" onchange="this.form.submit()">';
    ça marcherait,

    mais j'obtiens ca
    ../index.php?pres_date%253D2009-06-24%26pres_ip%3D172.20.28.16%26page=2
    du coup, tout ce qui se trouve apres index.php? n'est pas pris en compte et je me retrouve sur l'index.

    en testant avec
    ../index.php?pres_date=2009-06-24&pres_ip=172.20.28.16&page=2
    directement sur la barre d'adresse, ca marche, mais comment bien renvoyer cette adresse ?

  4. #4
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    Il faut ajouter tes deux nouveaux paramètres à ton formulaire, tu peux les mettre en champ caché pour qu'ils n'apparaissent pas dans le formulaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    echo '<form method="GET">
        <b>Page : </b>
        <select name="page" onchange="this.form.submit()">';
    	if($_GET['page']) $page=$_GET['page'];
    	for($i=1; $i<=$nombreDePages; $i++) {
    		if($i==$page) echo '<option value="'.$i.'" selected>'.$i.'</option>';
    		else echo '<option value="'.$i.'">'.$i.'</option>';
    	}
    echo '</select>';
    echo '<input type="hidden" value="'.$_GET['pres_date'].'" name="pres_date">';
    echo '<input type="hidden" value="'.$_GET['pres_ip'].'" name="pres_ip">';
    echo '</form>';
    J'espère que ca marchera

  5. #5
    Membre averti
    Inscrit en
    Juin 2009
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 17
    Par défaut
    Ca marche impeccable, merci bien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SQL] PhP Variable
    Par boo64 dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 03/05/2006, 14h49
  2. [MySQL] Fonctions calculs SQL/PHP pour projet football
    Par spamyx dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 25/04/2006, 16h16
  3. [MySQL] Requete SQL PHP
    Par CaptainChoc dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 22/10/2005, 16h13
  4. [MySQL] Sql-Php / Requete/ Afficher l'age (aide nécessaire please)
    Par Odilon dans le forum PHP & Base de données
    Réponses: 18
    Dernier message: 21/10/2005, 09h21
  5. [SQL+php] requete a trouver
    Par theclear dans le forum Langage SQL
    Réponses: 6
    Dernier message: 11/10/2004, 09h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo