Comment balayer une bdd a l'envers (pour un forum)

nico -  
PhP Messages postés 1774 Statut Membre -
je voudrait savoir si quelqu'un aurait une idée pour balayer une bdd en sens inverse. ceci pour realiser un forum en PHP.
merci
@+
nico
A voir également:

1 réponse

PhP Messages postés 1774 Statut Membre 606
 
Slt nico,

Tu as plusieurs solutions :

1) Tu indiques l'ordre de tri directement dans ta requête sql

La seule façon si tu veux traiter toutes les lignes de ta table mais sans les charger toutes en même temps sur une même page html !

Par ex voici comment je fais sur mon forum

http://phpujol.nexen.net/forum-fr.php3 (bêta test !!!)

J'ai une table intitulée [forum_question] et un champ qui m'indique la date de dernière mise à jour [update_time]

Et bien je recherche les 10 premières questions que je trie par ordre décroissant grâce à DESC

Ma requête ressemble à :
"SELECT * FROM forum_question ORDER BY update_time DESC LIMIT 0,10"

En réalité je paramètre les valeurs pour LIMIT bien entendu .

Naturellement mon champ [update_time] est un index !!

2) Tu utilises les fonctions php avec MySql :

<?php
$link=mysql_connect("hostname:port","username","password");
mysql_select_db("ma_base",$link);

// Ok : plus de tri mais plus de limites non plus !!!
$query="SELECT * FROM forum_question";
$result=mysql_query($query);

// Parcours de l'ensemble des lignes retournées dans l'ordre inverse
for ($i=mysql_num_rows($result)-1; $i >= 0; $i--)
{
if (mysql_data_seek($i,$result))
{
$row=mysql_fetch_object($result);
// Place ici ton code
}
}

?>

@+

Philippe
0