Résolu Message aucun article posté en PDO

Iktus

Premium
Inscription
21 Octobre 2013
Messages
1 675
Réactions
374
Points
12 981
RGCoins
25
Salut :RG:

Je suis actuellement entrain de faire un petit système de news et j'aimerai afficher un petit message si la table articles est vide, vu qu'on peut pas passer directement par un else mais qu'il faut une condition, je galère un peu ^^"

PHP:
<?php

        $req = $bdd->query('SELECT * FROM articles ORDER BY id DESC LIMIT 5');

        while($d = $req->fetch())
        {
        ?>
                                    <li><a href="<?php print Navigateur('url'); ?>/articles?id=<?php print $d['id']; ?>"><?php print $d['titre']; ?></a></li>
                                    <?php } if ($req->fetch() == 0) { ?>
                                    <li><a href="#">Aucun article</a></li>
                                    <?php } ?>

Voilà mon code, j'ai testé "if ($req->fetch() == 0)" mais c'est inutile :/

Merci!
 
Salut :RG:

Je suis actuellement entrain de faire un petit système de news et j'aimerai afficher un petit message si la table articles est vide, vu qu'on peut pas passer directement par un else mais qu'il faut une condition, je galère un peu ^^"

PHP:
<?php

        $req = $bdd->query('SELECT * FROM articles ORDER BY id DESC LIMIT 5');

        while($d = $req->fetch())
        {
        ?>
                                    <li><a href="<?php print Navigateur('url'); ?>/articles?id=<?php print $d['id']; ?>"><?php print $d['titre']; ?></a></li>
                                    <?php } if ($req->fetch() == 0) { ?>
                                    <li><a href="#">Aucun article</a></li>
                                    <?php } ?>

Voilà mon code, j'ai testé "if ($req->fetch() == 0)" mais c'est inutile :/

Merci!

Salut,

Tout simplement en mettant
PHP:
if(!$d) { echo '<li><a href="#">Aucun article</a></li>"; }
non ? :mmh:
 
Perso je fais une fonction qui compte le nombre d'entrée dans la table.

You must be registered for see images attach


PHP:
<?php

$db = new PDO('mysql:host=127.0.0.1;dbname=test;charset=utf8', 'root', ''); // Ligne de connexion à la base de donnée
$req = $db->query('SELECT * FROM rghelp ORDER BY id ASC'); // Requête qui récupère la liste des articles

// Function qui retourne le nombre d'article
function checkArticle(){
    global $db;
    $q = $db->query('SELECT count(id) AS checkArticle FROM rghelp');
    return $q->fetch();
}

// Boucle while qui parcours la liste des articles
while($d = $req->fetch()){
    echo $d['id'].'. '.$d['username'].'<br />';
}

// Si la function ci-dessus retourne 0, donc si il n'y a aucun résultat, on affiche un message
if(checkArticle()['checkArticle'] == 0) { echo "Aucun résultat trouvé.";}
?>

You must be registered for see images attach

Si on a aucune entrée.

You must be registered for see images attach

Là c'est l'id et le titre de l'article qui se trouve dans la table.

Je te laisse changer le code pour qu'il fonctionne avec le tiens.
Et je te conseille, si tu fais comme moi, de créer un fichier appart qui regroupe tes fonctions, c'est un gain de temps considérable que tu gagneras.
:tchuss:
 
Cette réponse a aidé l'auteur de cette discussion !
Perso je fais une fonction qui compte le nombre d'entrée dans la table.

You must be registered for see images attach


PHP:
<?php

$db = new PDO('mysql:host=127.0.0.1;dbname=test;charset=utf8', 'root', ''); // Ligne de connexion à la base de donnée
$req = $db->query('SELECT * FROM rghelp ORDER BY id ASC'); // Requête qui récupère la liste des articles

// Function qui retourne le nombre d'article
function checkArticle(){
    global $db;
    $q = $db->query('SELECT count(id) AS checkArticle FROM rghelp');
    return $q->fetch();
}

// Boucle while qui parcours la liste des articles
while($d = $req->fetch()){
    echo $d['id'].'. '.$d['username'].'<br />';
}

// Si la function ci-dessus retourne 0, donc si il n'y a aucun résultat, on affiche un message
if(checkArticle()['checkArticle'] == 0) { echo "Aucun résultat trouvé.";}
?>

You must be registered for see images attach

Si on a aucune entrée.

You must be registered for see images attach

Là c'est l'id et le titre de l'article qui se trouve dans la table.

Je te laisse changer le code pour qu'il fonctionne avec le tiens.
Et je te conseille, si tu fais comme moi, de créer un fichier appart qui regroupe tes fonctions, c'est un gain de temps considérable que tu gagneras.
:tchuss:

Super sa marche merci beaucoup :)
 
Retour
Haut