Det virker ok bort set fra at udskriften først er fra d. 21-06-06 hvilket jeg ikke kan forstå hvor den får den dato fra. http://www.vmcc.dk/traninger.php
ok, jeg tror vi går lidt forbi hinanden. Det jeg gerne vil er at sorter træningerne efter den dato som trænings datoen er. Men der er jo ikke noget ved at vise de træninger der har været. Altså fra dagen i dag og bag ud.
Synes godt om
Slettet bruger
29. marts 2006 - 15:39#7
Ja, og det er også det, som både jeg og hmortensen har svaret på.
WHERE dato <= NOW() betyder at den kun skal vise rækker, der ikke er passeret endnu.
ORDER BY DATE_FORMAT(... betyder at den skal sortere efter den formaterede dato, og det giver ikke det resultat, du forventer. Læg mærke til at de står sorteret i orden efter dag-i-måneden, da det er det første af den formaterede dato.
ORDER BY dato betyder at den skal sortere efter selve datoen
ja tænkte jeg nok. jeg har det til at ligge som varchar. Er det så en måde man kan udskrive datoen, så det kommer til at se sådan ud. 29-03-2006
her er lige hvordan jeg udskriver det <td width="15%"><?echo"<span class='sort_tekst'>$getter[dato] :</span>";?></td> Når den udskrives nu skrives den sådan 2006-29-03
Synes godt om
Slettet bruger
29. marts 2006 - 17:53#13
Ja, det kan man sagtens. Det kan gøres på flere forskellige måder:
Min foretrukne måde er, at lade sql-kaldet lave et timestamp, så jeg i PHP-koden kan bruge date() for at formatere den.
En anden måde er at bruge DATE_FORMAT() i sql-kaldet - men i SELECT-delen, ikke i ORDER BY delen.
så nu er feltet dato i tabellen lavet om til DATE og nu virker det. Men det med at skrive det ud i den rigtig række fælge 29-03-2006 er jeg ikke lige klar over hvad dert er du vil med date() Så go er jeg ik :) men bliver det forhåbenligt.
SELECT *, DATE_FORMAT(dato, '%d-%m-%Y') AS nyDato FROM ...
SÅ kan du fange den formaterede dato med $getter['nyDato']
Sandbox, hvis der ikke skal laves meget specielt dato formatering, er der da ingen grund til at lave det om til unix timestamp, og så formatere i php'en bagefter.
det virker :) Det kom til at se sådan ud $query = mysql_query("SELECT * , DATE_FORMAT(dato, '%d-%m-%Y') AS nyDato FROM vmcc_traninger WHERE dato >= NOW() ORDER BY dato LIMIT $limit");
$getter[nyDato] feltet dato i tabellen er DATE type Så nu mangler der vist kun et svar så der kan gives point :)
fu.. jeg kom kun til at vælge hmortensen kan men annuler et godkendt svar eller skal jeg lave et spørgsmål mere og give dig snadbox point. Fordi point skal du have
Og tak til dig også, steffenbloch, for points, selv om de lige tog en smuttur forbi hmortensen ;-)
Synes godt om
Ny brugerNybegynder
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.