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 :

Afficher le nombre de commentaires avec une pagination. [PDO]


Sujet :

PHP & Base de données

  1. #21
    Membre expert
    Avatar de Dendrite
    Femme Profil pro
    Développeuse informatique
    Inscrit en
    Juin 2008
    Messages
    2 129
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeuse informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2008
    Messages : 2 129
    Points : 3 627
    Points
    3 627
    Billets dans le blog
    8
    Par défaut
    Je pense qu'il fait allusion à cette pratique (intégrée dans une page HTML)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    $variable = 23;
    if ($variable == 23){
    ?>
     <p>Ma variable = 23 ! </p>
    <?php
    }
    $variable = 24;
    if ($variable == 24){
    ?>
     <p>Ma variable = 24 ! </p>
    <?php
    }
    ?>
    PDO, une soupe et au lit !
    Partir de la fin est un bon moyen de retrouver son chemin. Bibi - 2020

  2. #22
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Citation Envoyé par ricem Voir le message
    Non, mais sérieusement, on peut pas faire avec les accolades ça :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    $variable = 23;
     
     
    if ($variable == 23)
     
    {  // ici on ferme pour passer au HTML
    ?>
     
    <strong>Bravo !</strong> Vous avez trouvé le nombre mystère !
     
    <?php
    } // et ici on rouvre pour reprendre la continuité du PHP
    Où c'est que sur les autres sites il marque des inepties ??
    Si, on peut. Sauf que ce ne sont pas les accolades qui permettent de le faire, ce sont les balises.:

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $variable = 23;
    if ($variable == 23) {  
    // ici (la ligne suivante) on ferme la balise php pour passer au HTML
    ?>
     
    <strong>Bravo !</strong> Vous avez trouvé le nombre mystère !
     
    <?php
    // et ici (la ligne au dessus) on rouvre la balise php pour reprendre la continuité du PHP
    }

    ça marche tout aussi bien sans accolades :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    $a = 1;
    $b = 1;
    $sum = $a + $b;
    // on sort du PHP
    ?>
    <p> 
    A + B = <?php echo $sum; ?>
    </p>
    <?php

    Les accolades servent à regrouper une série d'instructions ensemble pour pouvoir leur appliquer une même condition :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if ($a >1) {
     echo "je suis dans la condition a >1 ";
     echo "moi aussi ";
    } else {
      echo "je suis dans la clause sinon ";
      echo "donc a <= 1";
    }
    echo " moi je suis tout le temps là ";
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #23
    Membre à l'essai
    Homme Profil pro
    autres
    Inscrit en
    Février 2018
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : autres
    Secteur : Transports

    Informations forums :
    Inscription : Février 2018
    Messages : 34
    Points : 11
    Points
    11
    Par défaut
    Citation Envoyé par jreaux62 Voir le message
    Montre-nous un seul lien où tu as vu ça écrit....
    Si tu regarde le message #10, tu verras en cliquant sur le mot en ben tu y va directement dessus

    Et d'après ce que j'ai pu lire, ça permet d’insérer du code HTML puis reprendre le PHP pour finir ça variable ??

    Edit :
    Celira, si tu regarde le code au message #13 qui contient les articles (qui après envoi sur la page de commentaire)
    Si j'enlève les accolades à la ligne 6 & 26, la page article n'affiche plus les articles, alors qu'avec les accolades, elle affiche bien les articles.
    Merci à vous de votre patience.
    En espérant trouver un moyen d'afficher mes commentaires .

  4. #24
    Invité
    Invité(e)
    Par défaut
    OK... C'est un tuto sur la syntaxe des conditions (if...)

    On trouve cette phrase :

    Comme vous le voyez, dans la seconde colonne on n'a pas utilisé de echo. En effet, il vous suffit d'ouvrir l'accolade ({), puis de fermer la balise PHP (?>), et vous pouvez mettre tout le texte à afficher que vous voulez en HTML !
    Rudement pratique quand il y a de grosses quantités de texte à afficher, et aussi pour éviter d'avoir à se prendre la tête avec les antislashs devant les guillemets ("ou').
    Il vous faudra toutefois penser à refermer l'accolade après (à l'intérieur d'une balise PHP, bien entendu).
    C'est ma dernière tentative d'explication....
    On est TROIS à tenter de t'expliquer, avec des exemples et autres liens...
    Si tu refuses de comprendre, reste avec tes certitudes...

  5. #25
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Je vais faire une métaphore. Supposons que tu veuilles offrir un cadeau aux gens présents ici : tu achètes un os à moelle pour jreaux, un bouquet de fleurs pour moi et des bonbons pour tout le monde.
    Pour que chacun ait son cadeau, tu mets l'os à moelle dans un paquet cadeau avec une étiquette "Pour Jreaux" et les fleurs dans une autre paquet avec une étiquette "Pour Celira"
    Comme les bonbons sont pour tout le monde, tu te contentes de les laisser à disposition : tu ne vas pas mettre un paquet cadeau autour alors qu'il n'y a pas d'étiquette à mettre dessus.

    Jusqu'ici tout va bien ?

    Retour au PHP : le paquet cadeau, ce sont les accolades et l'étiquette c'est la condition if. Si tu n'as pas de condition, tu ne mets pas d'accolades.
    Ce qui donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    if ($personne == "jreaux") // étiquette
    { // début du paquet
        echo "un os à moelle ! ";
    } // fin du paquet
     
    if ($personne == "celira") // étiquette
    { // début du paquet
        echo "une fleur ! ";
        echo "une autre fleur ! ";
        echo "et encore une fleur ! ";
    } // fin du paquet
     
    // pas d'étiquette, pas de paquet
    echo "des bonbons ! ";
    Selon la valeur de la variable $personne, tu auras un comportement différent.

    Pour résumer : les accolades et la condition fonctionnent ensemble, comme le paquet et l'étiquette : pas de condition, pas d'accolades. Et si tu utilises une condition, tu mets les accolades autour de tout ce qui doit aller dans la condition.
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  6. #26
    Invité
    Invité(e)
    Par défaut
    Je peux avoir un doggy-bag ??

  7. #27
    Membre à l'essai
    Homme Profil pro
    autres
    Inscrit en
    Février 2018
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : autres
    Secteur : Transports

    Informations forums :
    Inscription : Février 2018
    Messages : 34
    Points : 11
    Points
    11
    Par défaut
    Bon, j'ai enlevé toutes les accolades, mais il m'affiche pas mes commentaires

    Code php : 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
    // Récupération des commentaires
    			$sql = "SELECT pseudo, commentaire, DATE_FORMAT(date_commentaire, \'%d/%m/%Y à %Hh%i \') AS date_commentaire 
    			FROM commentaires 
    			WHERE id_billet = :LID 
    			ORDER BY ID DESC 
    			LIMIT :pagestart, :msgpage ";
          		$req = $bdd->prepare( $sql );
    			$req->bindValue( ':LID', $LID, PDO::PARAM_INT);
    			$req->bindValue( ':pagestart', $pagestart, PDO::PARAM_INT);
    			$req->bindValue( ':msgpage', $msgpage, PDO::PARAM_INT);
         	 	$req->execute( );
         	 	while ( $donnees = $req->fetch() )
     
     
    			{
    			// Affichage des commentaires -->
    			echo '<div class="commentaire">
     
    				 <p class="line"> Posté le ' .$donnees['date_commentaire']. 'par <b>' .htmlspecialchars($donnees['pseudo']). '</b>.<br/>
    				<span style="color: blue">' .nl2br(texte(htmlspecialchars($donnees['commentaire']))). '</span> </p>
     
    			</div>';	
    			}

  8. #28
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Aucune erreur ?
    Essaye avec un fetchAll pour récupérer toutes les données et un var_dump pour le debug :
    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
    // Récupération des commentaires
    $sql = "SELECT pseudo, commentaire, DATE_FORMAT(date_commentaire, \'%d/%m/%Y à %Hh%i \') AS date_commentaire 
        FROM commentaires 
        WHERE id_billet = :LID 
        ORDER BY ID DESC 
        LIMIT :pagestart, :msgpage ";
    $req = $bdd->prepare( $sql );
    $req->bindValue( ':LID', $LID, PDO::PARAM_INT);
    $req->bindValue( ':pagestart', $pagestart, PDO::PARAM_INT);
    $req->bindValue( ':msgpage', $msgpage, PDO::PARAM_INT);
    $req->execute( );
     
    $all_data = $req->fetchAll(); // on récupère toutes les données en même temps
     
    var_dump($all_data); // pour debug
     
    foreach ($all_data as $donnees){
        // Affichage des commentaires -->
        echo '<div class="commentaire">
                <p class="line"> Posté le ' .$donnees['date_commentaire']. 'par <b>' .htmlspecialchars($donnees['pseudo']). '</b>.<br/>
            <span style="color: blue">' .nl2br(texte(htmlspecialchars($donnees['commentaire']))). '</span> </p>
     
        </div>';	
    }
    Et si je reprends les messages au début, sans la condition LIMIT, ça fonctionne ?
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  9. #29
    Membre à l'essai
    Homme Profil pro
    autres
    Inscrit en
    Février 2018
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : autres
    Secteur : Transports

    Informations forums :
    Inscription : Février 2018
    Messages : 34
    Points : 11
    Points
    11
    Par défaut
    Celira,
    donc sans LIMIT ça doit être un code comme ceci, si je ne me trompe :
    Code php : 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
     
    // Récupération des commentaires
    			$sql = "SELECT pseudo, commentaire, DATE_FORMAT(date_commentaire, \'%d/%m/%Y à %Hh%i \') AS date_commentaire 
    			    FROM commentaires 
    			    WHERE id_billet = :LID 
    			    ORDER BY ID ";
    			$req = $bdd->prepare( $sql );
    			$req->bindValue( ':LID', $LID, PDO::PARAM_INT);
    			$req->execute( );
     
    			$all_data = $req->fetchAll(); // on récupère toutes les données en même temps
     
    			var_dump($all_data); // pour debug
     
    			foreach ($all_data as $donnees){
    			    // Affichage des commentaires -->
    			    echo '<div class="commentaire">
    			            <p class="line"> Posté le ' .$donnees['date_commentaire']. 'par <b>' .htmlspecialchars($donnees['pseudo']). '</b>.<br/>
    			        <span style="color: blue">' .nl2br(texte(htmlspecialchars($donnees['commentaire']))). '</span> </p>
     
    			    </div>';	
    			}

    Et le résultat avec et sans LIMIT est le même
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    C:\wamp64\www\nom-de-mon-site\commentaires.php:110:
    array (size=0)
      empty
    emty qui veut dire vide et size=0 idem vide comme mon cerveau en ce moment (autodérision)

  10. #30
    Invité
    Invité(e)
    Par défaut
    Bon.
    Dans la liste des articles, le lien vers les commentaires est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="commentaires.php?billet=<?php echo $donnees['id']; ?>">Voir les commentaires</a>
    Par conséquent, il faut écrire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $LID = ( !empty($_GET['billet']) )? intval($_GET['billet']) : 0;
    if( !empty($LID) )
    {
    ....
    			$req->bindValue( ':LID', $LID, PDO::PARAM_INT);
    ....
    }

  11. #31
    Membre à l'essai
    Homme Profil pro
    autres
    Inscrit en
    Février 2018
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : autres
    Secteur : Transports

    Informations forums :
    Inscription : Février 2018
    Messages : 34
    Points : 11
    Points
    11
    Par défaut
    Célira, j'ai ressayé ton code au message #5 et là ça à fonctionné (enfin presque) ça affiche le nombre de commentaires demandés, mais quand je clique sur la page 2 pour voir le reste des commentaires, il me met une erreur, voici l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Fatal error: Call to a member function fetchColumn() on boolean in
    qui correspond à la ligne 28, je remets le code en entier.
    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
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
     
    <section>
     
    		<div class="findepage">
     
    			<?php
     
    			require "#require/connet_bdd.php"; //Connexion à la base de données
     
    			require "#require/bcode_smiley.php";	//tout est dans le nom 
     
     
    			// Le nombre de messages qui sera affichés par page
    				$msgpage = 4;
     
    				// On récupère le nombre de message total qui sont dans la base de données
     
    				if (isset($_GET ['billet']))
    				{
    				    $LID = $_GET ['billet'];
    				}
    				else
    				{
    				    $LID = "xx"; 
    				}
     
    				$recupere = $bdd->query('SELECT COUNT(*) FROM commentaires WHERE id_billet = ' . $LID );
    				$msgtotal = $recupere->fetchColumn();
     
    				// Nombre de page total est égal à (nombre de message total divisé par le nombre de message par page)
    				$nbrpage = ceil($msgtotal/$msgpage); //ceil arrondie au chiffre supérieur
     
    				// Si aucune page n'est choisie alors la page par défaut est la première
    				if(isset($_GET['page']) AND !empty($_GET['page']) AND $_GET['page'] >0 AND $_GET['page'] <= $nbrpage)
    				{
    					$_GET['page'] = intval($_GET['page']);
    					$page = $_GET['page'];
    				}
    				else
    				{
    					$page = 1;
    				}
     
    				// page de départ qui servira pour la requête "desc & limit"
    				$pagestart = ($page-1)*$msgpage;
     
     
    				// Récupération du billet
    				$req = $bdd->prepare('SELECT id, titre, contenu, DATE_FORMAT(date_creation, \'%d/%m/%Y à %Hh%i \') AS date_creation FROM billet WHERE id = ?');
    				$req->execute(array($LID));
    				$donnees = $req->fetch();
     
    			?>
    			<!-- Affichage du billet -->
     
    			<div class="insides">
    				<div class="block_titre">	<!-- On affiche le titre et la date de création du billet -->
    					<?php echo '<span class="titre_forum">' . htmlspecialchars($donnees['titre']) . '</span> <p class="date_forum"> Posté le ' . $donnees['date_creation'] . '</p> ' ; ?>
    				</div>
     
    				<p class="contenu_forum">
    					<?php echo nl2br (texte(htmlspecialchars($donnees['contenu']))) ; ?>  <!-- On affiche le contenu du billet -->
    				</p>			
    			</div>
     
    			<?php
     
    			$req->closeCursor(); // Important : on libère le curseur pour la prochaine requête
     
    			// Récupération des commentaires
          		$req = $bdd->prepare('SELECT pseudo, commentaire, DATE_FORMAT(date_commentaire, \'%d/%m/%Y à %Hh%i \') AS date_commentaire FROM commentaires WHERE id_billet = ? ORDER BY id DESC LIMIT ?, ?');
                $req->bindValue(1,  $LID);
                $req->bindValue(2, (int) $pagestart, PDO::PARAM_INT);
                $req->bindValue(3, (int) $msgpage, PDO::PARAM_INT);
                $req->execute();			
    			while ($donnees = $req->fetch())
     
    		 		{
    			    echo '<div class="commentaire">
    			            <p class="line"> Posté le ' .$donnees['date_commentaire']. 'par <b>' .htmlspecialchars($donnees['pseudo']). '</b>.<br/>
    			        <span style="color: blue">' .nl2br(texte(htmlspecialchars($donnees['commentaire']))). '</span> </p>			 
    			    </div>';
    				}
     
    			?>	
     
    			<form class="sujet" action="commentaire_traitement.php" method="post">
    				<input class="form" type="text" name="pseudo" id="pseudo" placeholder="Votre pseudo" title="Les caractères spéciaux ne sont pas autorisé, merci"  />
    				<input type="submit" class="form2" style="" value="Envoyer" /><br/>
    				<textarea class="form" name="commentaire" placeholder="Éditer le commentaire ici, vous pouvez étirer le bloc verticalement en vous plaçant sur le coin en bas à droite." ></textarea>
    				<input type="hidden" name="id_billet" value="<?php echo $_GET['billet']; ?>" />
    			</form>
    			<span class="line"><i>* Vous devez remplir tout les champs, votre pseudo ne doit pas comporter de caractères spéciaux, ni d'espace, de même le pseudo doit contenir entre 3 et 12 caractères.
    			Si ceci n'est pas respecté, les données ne seront pas envoyé.</i></span>
     
    			<?php
     
    			echo '</div>'; // fermeture de "findepage"
     
    			echo '<div id="pagination">'; //Pour l'affichage, on centre la liste 
     
    				if ($page > 1) 
    				{
    					echo '<a class="lien" href="?page=' . ($page - 1) . '"> << </a>';
    				}
     
    				for ($i = 1; $i <= $nbrpage; $i++)
    				{
    					if ($i == $page)			
    					{
    						echo '<span class="sanslien">' .$i. '</span> ';
    					}
     
    					else
    					{
    						echo ' <a  class="lien" href="?page=' . $i . '"> ' . $i . '</a>';
    					}
    				}	
     
    				if ($page < $nbrpage) 
    				{
    					echo '<a class="lien" href="?page=' . ($page + 1) . '"> >> </a>';
    				}
     
    			echo '</div>'; // fermeture de "pagination"
     
    			$req->closeCursor();
     
    			?>
     
    	</section>
    Jreaux62, j'ai tenté de mettre ton code, mais j'avoue m'y perd un peu, si tu peux m'indiquer un numéro de ligne stp
    Merci.

  12. #32
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Dans tes liens de pagination, tu transmets uniquement l'information du numéro de page. Il faut ajouter le numéro du billet en cours (sinon tu vas perdre l'information) :
    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
    echo '<div id="pagination">'; //Pour l'affichage, on centre la liste 
     
    if ($page > 1) 
    {
        echo '<a class="lien" href="?billet='.$LID.'&page=' . ($page - 1) . '"> << </a>';
    }
     
    for ($i = 1; $i <= $nbrpage; $i++)
    {
        if ($i == $page)			
        {
            echo '<span class="sanslien">' .$i. '</span> ';
        }
     
        else
        {
            echo ' <a  class="lien" href="?billet='.$LID.'&page=' . $i . '"> ' . $i . '</a>';
        }
    }	
     
    if ($page < $nbrpage) 
    {
        echo '<a class="lien" href="?billet='.$LID.'&page=' . ($page + 1) . '"> >> </a>';
    }
     
    echo '</div>';
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  13. #33
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Fatal error: Call to a member function fetchColumn() on boolean in
    in... QUOI ?

    Si tu ne montres pas le message COMPLET, on ne connait ni le nom du fichier, ni le numéro de ligne !
    Idem pour le code : c'est QUEL fichier ?
    Dernière modification par Invité ; 24/04/2018 à 17h33.

  14. #34
    Membre à l'essai
    Homme Profil pro
    autres
    Inscrit en
    Février 2018
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : autres
    Secteur : Transports

    Informations forums :
    Inscription : Février 2018
    Messages : 34
    Points : 11
    Points
    11
    Par défaut
    Jreaux62, si tu regarde bien, le message #32, tu verras que j'ai bien précisé que l'erreur correspondait à la ligne 28 du code présent juste après.

    Celira, je me doutais que ça devais être un truc comme ça (qu'il fallait envoyer le numéro de l'id correspondant)

    sinon, Jreaux62,Celira, Dendrite, un grand MERCI pour votre aide et implication. Et mille excuse pour ma lenteur de compréhension , mais c'est pas toujours évident de comprendre, pour vous c'est simple, et je pense que quand j'aurais l'habitude (d'ici quelques années) cela, me paraitra beaucoup plus simple .

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Réponses: 8
    Dernier message: 18/04/2011, 14h46
  2. Afficher une liste avec une pagination en colonnes
    Par Saverok dans le forum Servlets/JSP
    Réponses: 0
    Dernier message: 22/08/2008, 14h07
  3. Réponses: 5
    Dernier message: 20/04/2007, 09h00
  4. Réponses: 2
    Dernier message: 07/02/2006, 20h42
  5. Réponses: 4
    Dernier message: 29/05/2004, 14h29

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