Problème news en php

Résolu
cracs22 Messages postés 26 Statut Membre -  
cracs22 Messages postés 26 Statut Membre -
Bonjour,

Ayant trouver un code sur internet me permetant de creer des news sur mon site, je l'ai un peu modifier mais maintenant je me rend compte d'un problème assez embettant ^^.
Les dernières news s'affichenten bas donc les anciennes en haut.. je ne trouve pas sur le net la réponse donc j'en viens à vous. Faut il modifier dans le code si oui ou ? ou dans la BDD le id a modifier pour que les numéro les plus petits reste en bas.

J'attend vos réponses :)

3 réponses

  1. ze-life-of-quent1 Messages postés 2169 Statut Membre 780
     
    Bonjour,
    pourrait on avoir un peu de code?
    0
  2. arth Messages postés 84 Date d'inscription   Statut Contributeur Dernière intervention   1 296
     
    Petit mot clé ASC ou DESC SQL pour résoudre ce léger souci.
    0
  3. cracs22 Messages postés 26 Statut Membre
     
    Rebonjour, oui j'ai pensé au DESK et ASC mais je ne sais pas vraiment ou le mettre, je vous donne le code de la page ou les news apparaissent :
    J'ai mis en gras et souligner ou j'ai placer mon DESK mais il ne fonctionne pas =/

    <?php
    /*
    Connexion à la BDD
    */
    require "includes/connexion.php";
    mysql_connect($serveur, $login, $motdepasse);
    mysql_select_db($base);
    /*
    Affichage d'une news en particulier
    */
    if(isset($_GET['id'])){
    $id = intval(htmlentities($_GET['id']));
    /*
    Si l'id !=0, intval renvoie quelque chose de bon
    */
    if($id != 0){
    $sql = 'SELECT * FROM news WHERE id='.$id.' ORDER BY date DESK;
    $req = mysql_query($sql) or die(mysql_error());
    $data = mysql_fetch_assoc($req);
    echo '<h1>'.stripslashes($data['titre']).'</h1>';
    echo '<em>'. date("d/m/Y G:i", strtotime($data['date'])).'</em>';
    echo '<p>'.stripslashes($data['contenu']).'</p>';
    }
    /*
    id ==0, intval renvoie certainement qqch de faux
    */
    else
    {
    echo "Erreur";
    }
    }
    /*
    Listage des 5 dernières news
    */
    else
    {
    $sql = 'SELECT * FROM news LIMIT 0,8';
    $req = mysql_query($sql) or die(mysql_error());
    while($data = mysql_fetch_assoc($req)){
    ?>
    <h2><a href="index.php?id=<?php echo $data['id']; ?>"><?php echo stripslashes($data['titre']);?></a></h2>
    <em><?php echo date("d/m/Y G:i", strtotime($data['date'])); ?></em>
    <p><?php echo stripslashes($data['description']); ?></p>
    <?php
    }
    }
    ?>
    0
    1. ze-life-of-quent1 Messages postés 2169 Statut Membre 780
       
      Ce n'est pas desK mais desC :-).
      0
    2. cracs22 Messages postés 26 Statut Membre
       
      Ah oui ^^' mais même en mettant DESC sa ne marche pas =/ les news récente sont toujours en bas =/
      0
    3. ze-life-of-quent1 Messages postés 2169 Statut Membre 780
       
      Je viens de trouver pourquoi: il faut le placer à 'autre requête:
      $sql = 'SELECT * FROM news LIMIT 0,8 ORDER BY date DESC';
      0
    4. cracs22 Messages postés 26 Statut Membre
       
      Merci à toi ça marche ! :) en fait il y a une erreur comme tu me l'a dit , il faut mettre ORDER BY avant limit
      $sql = 'SELECT * FROM news ORDER BY date DESC LIMIT 0,8';

      Merci
      0