Avatar billede stroke1 Nybegynder
04. august 2003 - 14:23 Der er 23 kommentarer og
1 løsning

omskrive dato og tid

hej.

Jeg har en dato og tid af typen datetime dvs. :

YYYY-mm-dd hh:mm:ss

den vil jeg gerne have omskrevet til unix epoch, da jeg skal sammenligne med den øjeblikkelige dato og tid.


I et andet spørgsmål har taskmgr skrevet følgende svar -

$dato = "24-10-1984";

$split=explode("-",$dato);
$dato=mktime(0,0,0,$split[1],$split[0],$split[2]);

og så har du $dato i unix epoch :)

Men jeg har både dato og tid, hvad gør man så ????
Avatar billede stroke1 Nybegynder
04. august 2003 - 14:24 #1
brugeren taster dato og tid ind i det angivne format og den bliver gemt i variablen $tidspunkt.
Avatar billede gonza.dk Nybegynder
04. august 2003 - 14:29 #2
kræver en omskrivning:

<?php
$date = "30-07-2003";

//laver datoen til et timestamp
$date = explode("-", $date);
$timestamp = mktime(0, 0, 0, $date[1], $date[0], $date[2]);

echo $timestamp;
?>
Avatar billede erikjacobsen Ekspert
04. august 2003 - 14:32 #3
Du erstatter 0,0,0 med timer,minutter og sekunder.
Avatar billede stroke1 Nybegynder
04. august 2003 - 14:33 #4
jamen hvad med tiden, den skal også med???
Avatar billede stroke1 Nybegynder
04. august 2003 - 14:33 #5
skulle ikke have accepteret, damn
Avatar billede erikjacobsen Ekspert
04. august 2003 - 14:34 #6
if (ereg('^([0-9]+)-([0-9]+)-([0-9]+) ([0-9]+):([0-9]+):([0-9]+)$',$dato,$reg)) {
  $timestamp = mktime($reg[3], $reg[4], $reg[5], $reg[1], $reg[0], $reg[2]);
}
Avatar billede stroke1 Nybegynder
04. august 2003 - 14:34 #7
erik, hvordan laver jeg en explode på
$tidspunkt der har formatet 2003-08-04 14:38:00
Avatar billede stroke1 Nybegynder
04. august 2003 - 14:35 #8
det prøver jeg lige erik :)
Avatar billede gonza.dk Nybegynder
04. august 2003 - 14:36 #9
stroke1 -> giver dig da bare pointsne tilbage ;o)
Avatar billede erikjacobsen Ekspert
04. august 2003 - 14:37 #10
Er det et udtræk fra MySql kan du lade den gøre arbejdet for dig

  select ......,unix_timestamp(ditdatetimefelt) as unixtiden,...... from .....
Avatar billede erikjacobsen Ekspert
04. august 2003 - 14:37 #11
(skidt med point - jeg skal ikke have nogen)
Avatar billede gonza.dk Nybegynder
04. august 2003 - 14:38 #12
stroke1 -> dine points ;o)

http://www.eksperten.dk/spm/383491
Avatar billede gonza.dk Nybegynder
04. august 2003 - 14:39 #13
erikjacobsen -> det skal jo gå retfærdigt til, desuden ser jeg først nu, at han faktisk havde det jeg skrev til ham (noget jeg brugte i et tidligere spørgsmål)
Avatar billede erikjacobsen Ekspert
04. august 2003 - 14:42 #14
Det er vel retfærdigt hvis jeg siger nej tak. Jeres mellemværende skal jeg ikke blande mig i.
Avatar billede gonza.dk Nybegynder
04. august 2003 - 14:43 #15
erikjacobsen -> nææh, det er jo op til dig selv, om du vil have points eller ej ;o)
Avatar billede stroke1 Nybegynder
04. august 2003 - 14:50 #16
Jeg har nu skrevet sådan som du skrev erik :
if (ereg('^([0-9]+)-([0-9]+)-([0-9]+) ([0-9]+):([0-9]+):([0-9]+)$',$_POST[tidspunkt],$reg)) {
  $timestamp = mktime($reg[3], $reg[4], $reg[5], $reg[1], $reg[0], $reg[2]);
}
echo "$timestamp";
exit;


Men den skriver følgende :



2003-08-04 20:00:00
Warning: mktime(): Windows does not support negative values for this function in c:\apache\apache\htdocs\tilenhvertid\indsaet_invitation1.php on line 36
-1
Avatar billede stroke1 Nybegynder
04. august 2003 - 14:51 #17
nej det er ikke et udtræk fra en database.
Avatar billede erikjacobsen Ekspert
04. august 2003 - 14:56 #18
;)

  $timestamp = mktime($reg[4], $reg[5], $reg[6], $reg[2], $reg[1], $reg[3]);
Avatar billede stroke1 Nybegynder
04. august 2003 - 14:59 #19
de plejer da ellers at starte med 0 ??
Avatar billede erikjacobsen Ekspert
04. august 2003 - 15:04 #20
Altså: En gang til ;)

  $timestamp = mktime($reg[4], $reg[5], $reg[6], $reg[2], $reg[3], $reg[1]);
Avatar billede stroke1 Nybegynder
04. august 2003 - 15:06 #21
nå så for står jeg bedre at sekunderne ikke passede :)
prøver lige igen.
Avatar billede erikjacobsen Ekspert
04. august 2003 - 15:07 #22
Du bør lige checke med en

print date("Y-m-d H:i:s",$timestamp);
Avatar billede stroke1 Nybegynder
04. august 2003 - 15:09 #23
nu fungerer det.
for lige at vende tilbage til det med udtræk fra databasen.
Hvordan skriver man det, hvis man sammen ligner i databasen, sådan mere specifikt
Avatar billede erikjacobsen Ekspert
04. august 2003 - 15:19 #24
Den skal jeg lige have en gang til - hvad vil du helt præcist?
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester