[Réglé] Listing d'un champ nombre dans l'ordre décroissant

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

doom
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 155
Inscription: Dim Déc 21, 2003 19:37

[Réglé] Listing d'un champ nombre dans l'ordre décroissant

Message le Dim Mar 21, 2004 11:50

lu all,
voila, mon site référence les films dernierement sortis dans les salles, et propose de télécharger leur bande annonce.
les films sont listés par ordre croissant selon leur id (dans ma table sql, il y a une table film et une table statistique, et ces 2 tables ont un champ id avec auto_increment)
donc les films sont listés par ordre croissant de leur id, donc les films les plus récents sont classés à la fin,

et moi, j'aimerais que les derniers films ajoutrés apparauissent en début de page, donc que les films soient classés dans l'ordre inverse de leur id.

voici ma page index.php

Code: Tout sélectionner
<?php require("param.php"); ?>
<?php if(!isset($_GET['limit'])){
$limit=0;
}
else { $limit = $_GET['limit']; }
if(!isset($_GET['number'])){
$number=10;
}
else { $number = $_GET['number']; }

?>
<?php
require("param.php");
if($link=mySql_connect($hote,$identifiant,$mot_de_passe)){
   
   if(mySql_select_db($nom_db,$link)){
   
   $query = "SELECT * FROM film LEFT JOIN statistique ON film.id =statistique.id";
      
      if($result= mySql_query($query,$link)){
         
         

?>

<?php
$count=0;
if($link=mySql_connect($hote,$identifiant,$mot_de_passe)){
   if(mySql_select_db($nom_db,$link)){

   $query = "SELECT * FROM film LEFT JOIN statistique ON film.id =statistique.id";
      if($result= mySql_query($query,$link)){
         while($ligne = mySql_fetch_object($result)){
         $film[0]=$ligne->titre;
         $film[1]=$ligne->description;
         $film[2]=$ligne->image;
         $film[3]=$ligne->torrent;
         $film[4]=$ligne->edonkey;
         $film[5]=$ligne->id;
         $film[6]=$ligne->nombre_telechar;
         $film[7]=$ligne->emule;
         $films[$count]= $film;
         $count++;
         
            }
         
         }else{ echo "<h1>PB 3</h1>";}
   
   }else{ echo "<h1>PB 2</h1>";}


}else{ echo "<h1>PB 1</h1>";}

         
?>
<?php echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?".">"; ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Document sans titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<p align="center">
  <?php
   if($limit+$number <= count($films)){
   $max=$limit+$number;
   }else{$max=count($films);}
   
   if($limit <= 0){
   $limit=0;
   $visible_precedent=false;
   }else{$visible_precedent=true;}
   
   $limit_suivant=$limit+$number;
   $limit_precedent=$limit-$number;
   
   if($limit >= count($films)){$visible_suivant=false;}else{$visible_suivant=true;}
   
  for($i=$limit;$i < $max;$i++){
     $filmi=$films[$i];
     
 
   ?>
</p>
<table width="94%" border="0" cellspacing="0">
  <tr>
    <td><div align="center"><font color="#000066"><em><font color="#000066" size="2">Format
        :</font> <br>
        <?php echo "$filmi[4]"; ?> </em></font></div></td>
    <td><div align="center"><font color="#000066"><?php echo "<a href=\"./download.php?id=$filmi[5]\">"; ?><?php echo "$filmi[0]"; ?></font></div></td>
  </tr>
  <tr>
    <td width="18%"><div align="center"><font color="#FFFFFF"><em><?php echo "<img src=\"http://freedzinesupport.free.fr/emule/films/image/$filmi[2]\" width=\"120\" height=\"160\">" ;?></em></font></div></td>
    <td width="82%"><p align="justify"><font color="#000066" size="1"><?php echo $filmi[1]; ?></font></p>
      <font color="#000066"><strong> </strong><font size="3"><?php echo "<a href=\"./download.php?id=$filmi[5]\">"; ?><font face="Times New Roman, Times, serif"><font size="3" face="Georgia, Times New Roman, Times, serif">T&l&charger
      la bande annonce<br>
      Film t&l&charg& <?php echo $filmi[6]; ?> fois</font><font face="Times New Roman, Times, serif">
      </font><em><font size="2"><br>
      <br>
      </font></em></font>
      <p></p>
      </font></font></td>
  </tr>
  <tr>
    <td bgcolor="#000033">&</td>
    <td bgcolor="#000033">&</td>
  </tr>
</table>
<p>
  <?php }?>
  <?php
               
            }else{echo "pb2";}
         }else{echo "pb3";}
      }else{echo "pb4";}

?>
</p>
</body>
</html>


merci d'avance de votre aide :)
Dernière édition par doom le Dim Mar 21, 2004 16:40, édité 2 fois.

Haq
WRInaute accro
WRInaute accro
 
Messages: 2104
Inscription: Jeu Aoû 29, 2002 21:18

Message le Dim Mar 21, 2004 12:30

Regarde dans la DOC mysql le "ORDER BY", tu y apprendras les différents classements faisables.

Tu n'as pas l'air d'avoir suivi les conseils que nombre d'entre nous t'avons donné ici: lire la documentation pour comprendre le code que tu prends à gauche et à droite.

Tu ne pourras pas avancer si tu continues à "coder" comme ça. On n'apprend pas à lire en recopiant l'annuaire téléphonique. Lis au moins les articles principaux de phpinfo.net. Ca prend 20-30 minutes...

Tu n'as même pas tenu compte de ma remarque concernant les balises que tu fermes et ouvres sans aucune nécessité.

aK.

doom
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 155
Inscription: Dim Déc 21, 2003 19:37

Message le Dim Mar 21, 2004 13:41

je sais, j' ai cherché et je n'ai pas trouvé,
je sais qu'il faut mettre un DESC LIMIT

mais comment ? j'ai tout essayé je n'y suis pas parvenu

Code: Tout sélectionner
SELECT * FROM film LEFT JOIN statistique ON film.id =statistique.id




pour ce qui est de mon script( que je n'ai aps programmé) et bien je n'ai pas eu le temps de le faire mais je vais m en charger. mais là n'est pas le problème, ...


ideezik
WRInaute passionné
WRInaute passionné
 
Messages: 931
Inscription: Mer Jan 28, 2004 19:54

Message le Dim Mar 21, 2004 13:47

C'est un peu du n'importe quoi ce code...
Mais bon pour faire un tri par ordre decroissant c'est :

order by [colonne] desc

Par defaut c'est asc.

Après je suis tout à faire d'accord avec ak pour le reste.

doom
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 155
Inscription: Dim Déc 21, 2003 19:37

Message le Dim Mar 21, 2004 14:46

ideezik a écrit:order by [colonne] desc



Code: Tout sélectionner
SELECT * FROM film LEFT JOIN statistique ON film.id =statistique.id



comment l'integrer dans cette commande? ou le mettre ?

Haq
WRInaute accro
WRInaute accro
 
Messages: 2104
Inscription: Jeu Aoû 29, 2002 21:18

Message le Dim Mar 21, 2004 15:00

Tu sais, doom, sur WRI ce n'est pas vraiment le cas, mais sur la plupart des forums de webmasters personne ne répond quand une question n'est pas accompagnée d'un bonjour et d'un merci. La poilitesse est aussi de mise sur le web, et ceux qui aident n'aiment pas avoir l'impression qu'on les utilise comme une hotline gratuite...

Quand à savoir où mettre le ORDER BY, si tu avais lu et appliqué mes conseils et ceux des autres membres, tu aurais pris 20 minutes pour lire cet article (par exemple... il en existe des centaines d'autres, car c'est la base de mysql)
http://www.phpinfo.net/articles/article_mysql.html

Tu es bloqué depuis 3 heures uniquement parce que tu veux la réponse ici plutôt que là où elle existe. C'est une erreur et tu ferais bien de t'en rendre compte.

Quant à dire "je sais, j'ai cherché et je n'ai pas trouvé"... no comment.

aK.

doom
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 155
Inscription: Dim Déc 21, 2003 19:37

Message le Dim Mar 21, 2004 15:25

dans ous mes autres posts, tout le monde pourra s'apercevoir que je suis tres poli, a chaque reply je remercié qu'ont m'ai aidé,
la c'est vrai j'ai oublié de dire emrci et aurevoir, je pensait qu'apres avoir collé la source de ma page c'était fini :) dsl sur ce point, j'édite le mesage

pour l'autre, je n'étais pas allé voir sur la page que tu me dis, j'y vaus toiut de suite et je vs tient au courant!

a toutes

doom
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 155
Inscription: Dim Déc 21, 2003 19:37

Message le Dim Mar 21, 2004 16:39

c'est bon j'ai trouvé :)
encore merci pr le lien ak!

il suffisait de mettre
Code: Tout sélectionner
$query = "SELECT * FROM film LEFT JOIN statistique ON film.id =statistique.id ORDER BY film.id DESC LIMIT 999";


encore thx, a+!

Haq
WRInaute accro
WRInaute accro
 
Messages: 2104
Inscription: Jeu Aoû 29, 2002 21:18

Message le Dim Mar 21, 2004 17:06

Avec plaisir ;-)

doom
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 155
Inscription: Dim Déc 21, 2003 19:37

Message le Dim Mar 21, 2004 17:32

a lol si on veux le metter illimité s'uffit d'enlever le LIMIT!


Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par Julien Coquet, expert certifié officiellement par Google Analytics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

Consultez la description détaillée des produits ou services de Google suivants : Google Sandbox

  • Analyse de popularité
    Cet outil vous permet d'analyser en détails la "popularité" de votre site sur Google. En plus du nombre de liens pris en compte par Google, il calcule le pourcentage de liens internes parmi tous les liens, et il affiche les premières URL trouvées.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités