Det ændre ikke de store... datoen står også lidt dumt... den skal jo faktisk sortere omvendt i strengen, så 09.10.06 bliver til 06.10.09 - kan man det ?
Sorry det virker perfekt... Nu mangler jeg lige at håndtere udtrækket korrekt i den flash fil jeg sidder med, så skulle det spille... Sendt et svar - :0)
OK du får lige det hele her, imgkat hedder i vikeligheden pris(ulogisk, men det var lettest for mig), men indeholder strenge som :
Annie Nightingale - The first female DJ in the World (04.08.06) frank billeder fra månen (09.10.06) !
$sql="SELECT pris, CAST(SUBSTRING(pris,LOCATE('(',pris),8) AS DATE) FROM content WHERE pris!='' AND idmenupunkt='".$id."'"; $que=mysql_query($sql); while($res=mysql_fetch_object($que)){ echo $res->pris; }
den skal stadig hen som ORDER BY i den rigtige kode
det her er kun for at troubleshoot det
$sql="SELECT pris, CAST(SUBSTRING(pris,LOCATE('(',pris),8) AS DATE) AS realdate FROM content WHERE pris!='' AND idmenupunkt='".$id."'"; $que=mysql_query($sql); while($res=mysql_fetch_object($que)){ echo $res->pris . " " . $res->realdate; }
det kommer ud sådan her(hvis det er til at overskue):
headlines=Annie Nightingale - The first female DJ in the World (04.08.06),Annie Nightingale - The first female DJ in the World (04.08.06),Annie Nightingale - The first female DJ in the World (04.08.06),Annie Nightingale - The first female DJ in the World (04.08.06),David Ove (29.06.06),David Ove (29.06.06),David Ove (29.06.06),David Ove (29.06.06),Tue (19.04.06),Tue (19.04.06),Tue (19.04.06),Tue (19.04.06),Lau (14.03.06),Lau (14.03.06),Lau (14.03.06),Lau (14.03.06),Haniel (01.03.06),Haniel (01.03.06),Haniel (01.03.06),Haniel (01.03.06),Charlotte Vang (14.09.05),Charlotte Vang (14.09.05),Charlotte Vang (14.09.05),Charlotte Vang (14.09.05),Sadia (14.09.05),Sadia (14.09.05),Sadia (14.09.05),Sadia (14.09.05),Mahshid (14.09.05),Mahshid (14.09.05),Mahshid (14.09.05),Mahshid (14.09.05),frank billeder fra månen (09.10.06),frank billeder fra månen (09.10.06),frank billeder fra månen (09.10.06),frank billeder fra månen (09.10.06)
$sql="SELECT image, bigImage, pris, SUBSTRING(pris,LOCATE('(',pris)+1,2) AS dd, SUBSTRING(pris,LOCATE('(',pris)+4,2) AS mm, SUBSTRING(pris,LOCATE('(',pris)+7,2) AS yy FROM content WHERE pris!='' AND idmenupunkt='".$id."' ORDER BY yy,mm,dd ";
Og så bruger jeg .reverse() på det array jeg får ind i swf'en.
Hvis du ønsker det i nedadgående dato-orden kan du skrive
ORDER BY yy DESC, mm DESC, dd DESC
I øvrigt ville jeg nok konvertere det til en date, som arne_v foreslog. Han brugte en CAST til Date, men jeg vil tro, at STR_TO_DATE funktionen er mere sikker, da man her kan angive, hvordan formatet på datostrengen er:
SELECT image, bigImage, pris, STR_TO_DATE(SUBSTRING(pris,LOCATE('(',8),'%d.%m.%y') AS Dato FROM content WHERE pris!='' AND idmenupunkt='".$id."' ORDER BY STR_TO_DATE(SUBSTRING(pris,LOCATE('(',8),'%d.%m.%y') DESC
Fordelen ved en Date er bl.a., at den også kan sortere på århundreder, sådan at (10.05.99) faktisk kommer før (10.05.05).
I øvrigt kan det måske være lidt farligt at basere søgningen efter datoen i teksten på en LOCATE, for hvad hvis der er en parantes i selve teksten? Det kunne se ud som om, at datoen altid ligger sidst i strengen. I så fald var det måske bedre at tage udgangspunkt i tekststrengens længde:
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.