Avatar billede kazz Nybegynder
16. november 2001 - 11:44 Der er 9 kommentarer og
2 løsninger

Dato sortering af udtræk fra MySQL

Jeg har et nyhedsmodul lavet i php som bygger på en database.
I databasen ligger følgende kolonner.
date ; nav ; head ; question ; text ; ID

feltet date er den dato som posten er oprettet og ser således ud yyyy-mm-dd
eks: 2001-16-11

Det jeg skal have til at virke er at php\'en skal printe posterne efter dato rækkefølge startende med de nyste.

Et af de steder jeg skal bruge det er i administrationen og her ser koden der printer posterne nu således ud.

IF ($number == 0) :
    PRINT \"<font class=\\\"fed\\\"><br>Der er ingen poster :(((</font>\";

ELSEIF ($number > 0) :
    PRINT \"<tr valign=top>
            <td width=75 bgcolor=#999999 class=fed>Date</td>
            <td width=250 bgcolor=#999999 class=fed>Navigation:</td>                   
            <td width=50 bgcolor=#999999 class=fed>Slet:</td>
            <td width=50 colspan=2 bgcolor=#999999 class=fed>Editér:</td></tr>\";
    WHILE ($i < $number):
            $ID = mysql_result($result,$i,\"ID\");
            $date = mysql_result($result,$i,\"date\");
            $nav = mysql_result($result,$i,\"nav\");
            $head = mysql_result($result,$i,\"head\");
            $question = mysql_result($result,$i,\"question\");
            $text = mysql_result($result,$i,\"text\");       
    PRINT \"<tr valign=top><td width=75 class=fed>$date</td>
            <td width=250 class=fed>$nav</td>
            <td width=50 class=fed><a href=delete.php?ID=$ID&amp;nav=\".urlencode($nav).\">slet</A></td>
            <td width=50 class=fed><a href=edit.php?ID=$ID>editér</a></td></tr>\";
    PRINT \"\";
    $i++;
    ENDWHILE;
    PRINT \"\";
ENDIF;

Men det skal især bruges på selve siden hvor posterne vises.

Håber at der er nogen der kan hjælpe :)
Hilsen KAZZ
Avatar billede htx98i17 Professor
16. november 2001 - 11:50 #1
det laver du i din query...

ORDER BY date DESC
Avatar billede htx98i17 Professor
16. november 2001 - 11:50 #2
eksempelvis:
SELECT * FROM tabel ORDER BY date DESC
Avatar billede fri-hash Nybegynder
16. november 2001 - 11:51 #3
sorter dem allerede i din query:

select * from nyheder order by date desc
Avatar billede fri-hash Nybegynder
16. november 2001 - 11:51 #4
hehe, too slow
Avatar billede kimg Nybegynder
16. november 2001 - 11:52 #5
Kan du ikke bare sortere efter id

Kim
Avatar billede htx98i17 Professor
16. november 2001 - 11:53 #6
way too slow, hehe
Avatar billede fri-hash Nybegynder
16. november 2001 - 11:56 #7
arh, 1 minut er ingen tid sådan som min forb sutter for tiden *LOL
Avatar billede fri-hash Nybegynder
16. november 2001 - 11:57 #8
og PS: 150 points er måske cirka 5 gange for højt :-)
Avatar billede htx98i17 Professor
16. november 2001 - 11:58 #9
hehe ej det er sq ik så galt,
vi har begge givet et hurtigt svar :)
Avatar billede htx98i17 Professor
16. november 2001 - 11:59 #10
shit, jeg havde slet ikke set pointantallet, hehe
15 point passer vidst bedre til det her spm, det er i hvert fald let, hehe
Avatar billede kazz Nybegynder
16. november 2001 - 11:59 #11
Hejsa Det var sgu\' hurtigt, men fedt det er altid rart at blive fri for spildtid ;)

Jeg synes at det er rimeligt at du  htx98i17 og fri-hash deler pointene da i jo begge har svaret med nogle gode svar og med så kort interval at jeg ikke kan forsvarre andet.

Tak til jer begge
KAZZ :))
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester