Gå til innhold

Anbefalte innlegg

Problemet er som følger:

Jeg holder på å lage en enkelt nyhets-web og skal da bl.a. ha dato på innleggene/nyhetene. Selv om jeg skriver

$dato = date("d.m.y")

og legger dette inn i MySQL-databasen blir det feil, fordi jeg har formatet y.m.d. i databasen. Hvordan kan jeg endre dette slik at enten alle datoer legges inn med d.m.y? Eller hvordan gjør jeg evt. slik at jeg henter ut datoen slik den er i databasen, men gjør den om til formatet d.m.y før den skrives ut?

 

(dato-feltet er seff av typen DATE i databasen)

Lenke til kommentar
Videoannonse
Annonse
Det går vel evt. også an å lagre datoen som tekst i databasen? Den skal foreløpig ikke brukes til noe - annet enn å vise datoen for når innlegget/nyheten ble postet.

 

Joa, det går det, MEN som du selv sier: foreløpig. Du vet aldri når du trenger den datoen senere. Kanskje på sortering eller no? Råder deg på det sterkeste å beholde DATE - formatet. Det er ikke noe vanskelig å gjøre det jeg foreslo ovenfor. Tar maks 2 min.

Lenke til kommentar

Kanskje det, men hvordan bruker jeg den når det er andre ting som hentes ut i samme SQL-setning?

 

Slik er stningen nå:


"SELECT newsid, heading, main_txt, date, ingress FROM news ORDER BY newsid DESC LIMIT 0,5;";

 

Og så skal den være noe sånt?


"SELECT newsid, heading, main_txt, DATE_FORMAT(date,'%d.%m.%Y') AS dato, ingress FROM news ORDER BY newsid DESC LIMIT 0,5;";

Lenke til kommentar

Har tukla en del med de samme problemene rundt dato og klokkeslett. Jeg endte opp med å lagre dato som unixtime i db. Veldig enkelt ved insert av en post bare å benytte time() Når jeg skal ha det ut igjen så har jeg laget en date klasse hvor jeg deffinerer formatet/formatene og sender da unixtimen jeg får fra db inn i en egen funksjon i denne klassa som gir meg det formatet jeg ønsker tilbake. Klassen inneholder oxo en validate funksjon som er kjekk når du lar brukerne skrive inn dato.

 

Jeg mener dette er med å øke søkeytelsen tatt i betraktning at db søker kjappere på tall enn på stringer (mener jeg ganske sikkert ? )

 

Morro om noen har noen kommentarer på min løsning :)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...