/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
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
Tid, dato og mySQL?
Fra : Jakob Munck


Dato : 27-11-05 08:24

1.
I et "datetime" (form: '0000-00-00 00:00:00') felt i min mySql vil jeg godt
indsætte et udtryk, der rummer år/måned/dato/time/minut/sekund. Findes der
et enkelt udtryk i php, som rummer disse oplysninger i det rette format til
at sætte direkte ind i mySql? Eller skal man selv sammensætte et udtryk, der
passer? Og hvordan kunne det så se ud??

2.
Hvis jeg ud fra et udfyldt "datetime" felt i mySql-database ønsker at
udskrive f.eks: "27. November 2005", hvordan skriver jeg så det?


v.h.
Jakob


PS. Ja, jeg har set både i begge manualerne, hvor der står mange sider om
emnet. Men jeg har ikke fundet det korte og præcise svar.



 
 
Ukendt (27-11-2005)
Kommentar
Fra : Ukendt


Dato : 27-11-05 09:49

> 1.
> I et "datetime" (form: '0000-00-00 00:00:00') felt i min mySql vil jeg
> godt indsætte et udtryk, der rummer år/måned/dato/time/minut/sekund.
> Findes der et enkelt udtryk i php, som rummer disse oplysninger i det
> rette format til at sætte direkte ind i mySql? Eller skal man selv
> sammensætte et udtryk, der passer? Og hvordan kunne det så se ud??

Brug date()-funktionen til at formatere.

> 2.
> Hvis jeg ud fra et udfyldt "datetime" felt i mySql-database ønsker at
> udskrive f.eks: "27. November 2005", hvordan skriver jeg så det?

Du kan formatere datoer med date()-funktionen - du skal bruge
strtotime()-funktionen, når du henter datoer ud fra MySQL
date("d. m Y", strtotime($data["dateFromMySQL"])). Kan ikke huske det helt,
men kig på de 2 funktioner i manuelen.



Jakob Munck (27-11-2005)
Kommentar
Fra : Jakob Munck


Dato : 27-11-05 16:25

Løsningen er følgende:

1.
//formatterer dato til indskring i datetime-felt:
$date_time = date("Y-m-d G:i:s", time());

2.
//formatterer dato som hentes fra datetime-felt:
echo date("j/n/Y", strtotime($data["date_time"]));

Tak for hjælpen.

v.h.
Jakob



Erik Ginnerskov (28-11-2005)
Kommentar
Fra : Erik Ginnerskov


Dato : 28-11-05 22:24

Jakob Munck wrote:

> 1.
> //formatterer dato til indskring i datetime-felt:
> $date_time = date("Y-m-d G:i:s", time());
>
> 2.
> //formatterer dato som hentes fra datetime-felt:
> echo date("j/n/Y", strtotime($data["date_time"]));

Det har jeg prøvet at indsætte i en gæstebod, som bruger MySql. Det
resulterer i en fejlmelding:

Kunne ikke udføre: /insert into gaestebog(navn,epost,subject,besked,ip,tid)
values('Erik','','Test af dato og tid','Virker det?','',2005-11-28
20:43:41)/
Fejlen er: /You have an error in your SQL syntax near '20:43:41)' at line 2/

Det kan ses i disse filer:

http://hjemmesideskolen.dk/usenet/gem.phps eller
http://hjemmesideskolen.dk/usenet/gem.txt => skriver til mysql

Koden indsat i linjerne 77 og 80. Linje 81 er fungerende originalversion af
80.

http://hjemmesideskolen.dk/usenet/guestbook.phps eller
http://hjemmesideskolen.dk/usenet/guestbook.txt => læser fra mysql

Koden er indsat i linje 40. Linje 39 er fungerende originalversion af 40.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk - http://ginnerskov.dk
http://html-faq.dk/



Martin (27-11-2005)
Kommentar
Fra : Martin


Dato : 27-11-05 16:40

Jakob Munck wrote:
> 1.
> I et "datetime" (form: '0000-00-00 00:00:00') felt i min mySql vil jeg godt
> indsætte et udtryk, der rummer år/måned/dato/time/minut/sekund. Findes der
> et enkelt udtryk i php, som rummer disse oplysninger i det rette format til
> at sætte direkte ind i mySql? Eller skal man selv sammensætte et udtryk, der
> passer? Og hvordan kunne det så se ud??

strtotime() - den kan du slå op i php manualen :)

>
> 2.
> Hvis jeg ud fra et udfyldt "datetime" felt i mySql-database ønsker at
> udskrive f.eks: "27. November 2005", hvordan skriver jeg så det?

Du kan bruge DATE_FORMAT direkte i MySQL select'en - kig i manualen, for
hvilke koder der er.


>
>
> v.h.
> Jakob
>
>
> PS. Ja, jeg har set både i begge manualerne, hvor der står mange sider om
> emnet. Men jeg har ikke fundet det korte og præcise svar.
>
>

--

Venlig hilsen
Martin


Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408938
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste