/ Forside/ Teknologi / Udvikling / PHP / Spørgsmål
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
PHP, while, order by
Fra : Dennis85
Vist : 956 gange
350 point
Dato : 05-09-06 18:07

Hejsa.

Håber her er en PHP kyndig :D.

Jeg har lidt problemer med en side, hvor resultaterne skal sorteres efter min `dato`. Men da den er tinytext og i formatet 01-01-06, så sorteret den kun efter de første 2 tal, altså f.eks. 01.
Jeg bruger bare den alm "select * from tabel order by dato asc" osv.

Hvad gør jeg for at få den til at sortere det ordenligt, så den 17-09-06 ikke er efter 15-10-06?

På forhånd tak.

 
 
Accepteret svar
Fra : Jellerhimself

Modtaget 350 point
Dato : 22-09-06 18:55

Jeg ved ikke om der findes en nemmere metode (gør der givet), men har selv brugt noget lignende:

Kode
while($data = mysql_fetch_array(mysql_query("select * from tabel"))) {
$str = str_replace("-", "", $data["date"]);
$date[$data["id"]] = $str[2].$str[1].$str[0];
}

arsort($date);

foreach($date as $id => $value) {
$data = mysql_fetch_array(mysql_query("select * from tabel where id = '$id'"));
// Gør hvad du skal med dataene
}


Ved ikke lige om det nøjagtige system her virker, men du kan da i hvert fald få idéen med hvor jeg vil hen. ;)

Alternativt vil jeg sige, at det bedste nok ville være at tilføje en kolonne i din tabel, hvor du gemmer Unix tiden i stedet. Hvis datoen altid er den pågældende, hvor den tilføjes, kan det gøres med time().

Ellers kan du bruge mktime(). Slå funktionen op på www.php.net for at se hvordan den bruges.

Godkendelse af svar
Fra : Dennis85


Dato : 23-09-06 13:26

Tak for svaret Jellerhimself.
Men habde fundet ud af det i mellemtiden. Du skal dog ha de points som tak for at du gad at svare!

Du har følgende muligheder
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.

Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste