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

Langage PHP Discussion :

affichage page par page


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2009
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Décembre 2009
    Messages : 154
    Points : 45
    Points
    45
    Par défaut affichage page par page
    Bonjour,
    J'ai des fautes au niveau des gets dans ce code ci dessous, qui me affiche juste 2 liens une 'page précédent' et l'autre "page suivante"!
    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
    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
     
         <script src="Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
     
         <?php
     
    	 if(!empty($_GET['id_cat'])){
    	 echo "<h3></br><strong>".$_GET['id_cat']."</strong></h3></br>";
         // Connexion à la base de données
         $host = "localhost";
         $user = "root";
         $pass = "";
         $data = "basedonnee"; // Nommer ici la base de données
         $connect = mysql_connect($host, $user, $pass)
         or die("Connexion au serveur impossible !");
         $db = mysql_select_db($data, $connect)
         or die("Sélection de la base impossible !");
     
       $parpage = 3;
    $limit = 1;
    // On test si la variable existe
    if (isset($_GET['limit'])) {
         // On test si c'est un entier
     
         if(is_int($_GET['limit'])) {
              $limit = $_GET['limit'];
         }
    }
    $offset = ($limit - 1) * $parpage ;
    	 $sql = "SELECT * FROM categorie,video
    	 where categorie.ID_CAT=video.ID_CAT 
    	and categorie.ID_CAT='".$_GET['id_cat']."' 
    	order by rand()
    	LIMIT $offset, $parpage"; // Requête initiale (à compléter si nécessaire)
        $sql1="SELECT distinct categorie.ID_CAT,categorie.SOUS_CAT FROM categorie,video
    	 where categorie.ID_CAT=video.ID_CAT 
    	";
          // Nombre d'enregistrements par page à afficher
      $result = mysql_query($sql);
    if(mysql_query( $sql, $connect )=== FALSE) {
        die(mysql_error()); // TODO: better error handling
    	}
    	 echo '</br></br>';
    	 //echo '<div class="e2-form">';
    	 echo '<table id="table1" >';
    	 echo '<tr><td><center><h3>Titre</h3></center></br> </td><td><center><h3>Description</h3></center> </br></td><td><center><h3>Voir video</h3></center></br></td></tr>';
    	 echo '<tr><td colspan="3" ><hr></td></tr>' ;
         // On affiche le résultat de la requête
        // On crée donc ici son propre tableau pour lequel on souhaite une pagination
         while ($ligne = mysql_fetch_array($result)) {
    	  echo '<tr><td colspan="3" ><hr></td></tr>' ;
        echo '<tr><td width="250"><center>'.$ligne["TITRE_VIDEO"].'</center></td><td width="250"><center>'.$ligne["DESCRIPTION_VIDEO"].' '.$ligne["LIEN_VIDEO"].'</center>></td><td><center><a href="accueil.php?page=voirvideo&code='.$ligne["ID_VIDEO"].'"><img src="images/voir.png"></a></center></td></tr>';
    	 echo '<tr><td colspan="3" ><hr></td></tr>' ;
         }
     
     
      //   echo "</div>";
        echo '</table>';
    //if (isset($_GET['limit'])) {
    ?> 
     
     <a href="accueil.php?page=info11&limit=<?php echo $limit + 1 ?>">Page suivante</a>
    	<a href="accueil.php?page=info11&limit=<?php echo $limit - 1 ?>">Page précédente</a> 
    <?php  // }
        }
    	 else echo "Pas de videos</br></br>"; ?>
    </br>
       <a href="accueil.php" ><img src="images/retour.png" width="70" height="40" style=" float:right" /></a>
    il m'affiche bien les 3 premiers lignes mais le probléme si je clique sur lien précédent ou suivant m'affiche pas de videos?
    J'ai utilisé 2 gets pour me recuperer id de categorie et variable $limit!
    merci d'avance
    id_cat est récuperable dans page accueil si je clique sur lien categorie "php" par exemple.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <html>
    <a href="accueil.php?page=info11&id_cat=1">php </a>
    </html>
    //et variable $limit est local dans la page info11.php

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Ton test sur l'entier ne fonctionne pas : $_GET ne ramène que des chaines.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2009
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Décembre 2009
    Messages : 154
    Points : 45
    Points
    45
    Par défaut
    Mais le probleme est ce que je peux envoyer 2 $_GET vers un lien !!
    mais l'entier a été reçu car il m'a affiché les 3 premiers lignes!
    merciii

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    mais l'entier a été reçu car il m'a affiché les 3 premiers lignes!
    Pour les 3 premières lignes tu n'as pas de $_GET['limit'] donc le problème ne se pose pas.

    Pour passer la deuxième variable il suffit de l'ajouter, d'ailleurs tu sais le faire puisque tu passais déjà "page" et "limit" dans ton lien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <a href="accueil.php?page=info11&id_cat=<?php echo $_GET['id_cat']; ?>&limit=<?php echo $limit + 1; ?>">Page suivante</a>
    <a href="accueil.php?page=info11&id_cat=<?php echo $_GET['id_cat']; ?>limit=<?php echo $limit - 1; ?>">Page précédente</a>
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2009
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Décembre 2009
    Messages : 154
    Points : 45
    Points
    45
    Par défaut
    Merci bien,
    Pour $_GET, je suis obligé de lui passer les catégories: php, java ... pas les id de catégories de l'info!!! Parce que au niveau de sécurité c'est mieux de passer les ID!!

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    D'un point de vue sécurité, ça ne change rien.
    D'un point de vue pratique c'est plus simple de travailler avec des nombres.

    Tu n'es pas obligé de finir tes phrases par des points d'exclamation tu sais.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Citation Envoyé par devhafid Voir le message
    Merci bien,
    Pour $_GET, je suis obligé de lui passer les catégories: php, java ... pas les id de catégories de l'info!!! Parce que au niveau de sécurité c'est mieux de passer les ID!!
    Non. Au niveau sécurité, c'est mieux de passer par PDO ou mysqli plutôt que les fonctions mysql* .
    N'importe qui peut effacer tes tables avec le code que tu as là. Il est impératif que tu utilises PDO ou mysqli et des requêtes préparées.

  8. #8
    Membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2009
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Décembre 2009
    Messages : 154
    Points : 45
    Points
    45
    Par défaut
    sabotage: Ok merci bien.
    Tsilefy : Pouvez vous me donner les astuces que je peux faire pour les méthodes que vous avez dit à part les fonctions mysql.
    Ah c'est les méthodes d'objet, moi je parle juste au niveau de développement en php pas au niveau de base donnée? ¨Merci toi aussi

  9. #9
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    regarde cet article:
    Comprendre PDo
    notamment la section III La pratique, utiliser PDO
    Ne te laisse pas impressionner, c'est plus facile que ça en a l'air, et ça te protège contre les injections SQL qui sont responsable du piratage de beaucoup de sites.

  10. #10
    Membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2009
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Décembre 2009
    Messages : 154
    Points : 45
    Points
    45
    Par défaut
    moi je veux juste au niveau développement, pour la base donnée mon travail doit être en mysql.
    Merci beaucoup

  11. #11
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    C'est ce qui est décris dans l'article.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  12. #12
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Pdo est juste une méthode pour manipuler mysql (et d'autres bases de données) de manière plus simple et sécurisée.

    A moins que ton travail exige expressément les fonctions mysql* (dans ce cas, il faut virer le prof).

  13. #13
    Membre du Club
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2009
    Messages
    154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Décembre 2009
    Messages : 154
    Points : 45
    Points
    45
    Par défaut
    Merci bien à vos

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

Discussions similaires

  1. Affichage ipconfig /displaydns page par page? windows7
    Par destructive.flame dans le forum Windows
    Réponses: 1
    Dernier message: 28/02/2014, 08h00
  2. [MySQL] Affichage du résultat page par page (pagination)
    Par marcito dans le forum PHP & Base de données
    Réponses: 12
    Dernier message: 20/07/2007, 14h53
  3. [MySQL] Affichage page par page et requêtes du type $sql .=
    Par carelha dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 06/04/2006, 17h12
  4. [Tableaux] PB liens apres affichage page par page
    Par x2thez dans le forum Langage
    Réponses: 16
    Dernier message: 15/03/2006, 16h58
  5. [MySQL] afficher plusieurs enregistrements par page par page à la volée
    Par pod1978 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 14/03/2006, 12h22

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