Bonjour à vous,
avant tout merci pour les tutoriels présents sur ce site qui sont super bien fait ! Je voudrais savoir si il est possible de faire afficher que les 2 dernières news sur notre site ?
tutoriel en question : http://www.grafikart.fr/tutoriels/gerer-news-php-43
Merci d'avance :)

7 réponses


PhiSyX
Réponse acceptée

Hello,
Dans ta requete SQL : ' $sql="SELECT * FROM news"; '
Tu dois dire à ta requête que tu souhaites afficher les 2 dernier résultats, pour cela, on utilise les mots clés ORDER BY champ DESC (Qui permet de trier les résultats dans un ordre décroissant) et LIMIT. (Pour indiquer une limite)

Donc ça ferait comme l'exemple que j'ai posté plus haut :
' $sql="SELECT * FROM news ORDER BY id DESC LIMIT 0,2"; '

Voilà voilà :p

Hello, préciser une LIMIT à ta requête SQL.

$query = 'SELECT `champ`
        FROM `news`
        ORDER BY `id` DESC
        LIMIT 0,2';

Ceci est ma partie de code :

<div class="bloc">
                <h1>Les News !</h1>
                    <?php
                        require "config.php";
                        mysql_connect(DB_HOST,DB_LOGIN,DB_PASS);
                        mysql_select_db(DB_BDD);

                        $sql="SELECT * FROM news";
                        $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
                        while($data=mysql_fetch_assoc($req)){
                            echo "<h2>{$data"titre"]}</h2>";
                            echo "<p>{$data"contenu"]}</p>";
                            echo "<p align\"right\">".date("j/n/Y G:i",strtotime($data"date"]))."</p>";
                        }
                    ?>
                </div>

A quel endroit dois-je inserer cette limite ?
Merci

Bonjour,

je rebondis sur cette question pour savoir: comment serai t il possible de colorer 1 news sur 2 dans une couleur differentes?

<?php
          $sql = 'SELECT date, texte FROM news ORDER BY id DESC LIMIT 0,10';
          $req = $PDO->query ($sql);
          while($d = $req->fetch(PDO::FETCH_OBJ)){
              echo("<div id=\"date_news\">".date("d/m/Y",strtotime($d->date))."</div>");
              echo("<div id=\"contenu_news\">".$d->texte."</div>");
          };
  ?>

merci d'avance

Gilles

Yep : Définis 2 class diff dans ton CSS (ex: .cols et .cols2)

$i = 0;
while ($d = $sql->fetch(PDO::FETCH_OBJ)) {
    $css = (($i % 2) != 0) ? 'cols' : 'cols2';
    echo("<div id=\"date_news\" class=\"" . $css . "\">".date("d/m/Y",strtotime($d->date))."</div>");  
    echo("<div id=\"contenu_news\ class=\"" . $css . "\">".$d->texte."</div>");
    ++$i;
}

Voilà ^^

Merci PhiSyx;

manquait juste un guillemet dans le 2 eme ECHO mais ça j'ai trouvé.

encore merci

Gilles

Merci Merci :D