Autor | Zpráva | ||
---|---|---|---|
mardon Profil |
#1 · Zasláno: 8. 4. 2009, 15:48:36
V db mám datum v ve formátu datetime,
v PHP bych chtěla pomocí formuláře vložit nový záznam do db pro datum tam mám <input type="text" ... Pokud do formuláře vložím např. 01.01.2009 10:00 datum se mi správně neuloží do db. |
||
mikul Profil |
#2 · Zasláno: 8. 4. 2009, 16:10:56
Pokud to má být pro jiné uživatele, tak to můžeš udělat tak, aby datum zadávali pomocí select. Zvlášť den, měsíc rok a ty už si to pak naformátuješ tak aby ti to dtb vzala - RRRR.MM.DD HH:MM:SS
|
||
nightfish Profil |
#3 · Zasláno: 8. 4. 2009, 16:11:15
to proto, že datetime má formát yyyy-mm-dd hh:mm:ss
pakliže ti z formuláře leze něco jiného, bude potřeba to patřičně převést |
||
mardon Profil |
#4 · Zasláno: 8. 4. 2009, 16:43:57
takže jsem pokročila
$datum = "01.01.2009 10:00"; $prevod = explode(" ",$datum); $prevod2 = explode(".",$prevod[0]); mi da zvlast den, mesic, rok a hodinu. ted jsem se trosku zarazila pouzit asi funkci date? do které ale proměnnou je časovy údaj v timestamp? |
||
Kajman_ Profil * |
Stačí to spojit
$datum_pro_mysql=$prevod2[2]."-".$prevod2[1]."-".$prevod2[0]." ".$prevod[1]; |
||
mardon Profil |
#6 · Zasláno: 8. 4. 2009, 16:56:59 · Upravil/a: mardon
jaá jsem to nakonec doplácala takto
<? $datum = "01.01.2009 10:00"; $prevod = explode(" ",$datum); echo $prevod[0]."<br>"; echo $prevod[1]."<br>"; $prevod2 = explode(".",$prevod[0]); $prevod3 = explode(":",$prevod[1]); $vysledek = date('Y-m-d H:i:s',mktime($prevod3[0],$prevod3[1],0,$prevod2[1],$prevod2[0],$prevod2[2])); echo $vysledek; ?> |
||
Moab Profil |
#7 · Zasláno: 8. 4. 2009, 16:59:25 · Upravil/a: Moab
nebo
$datum_pro_mysql=StrFTime("%Y-%m-%d %H:%M:%S",StrToTime($datum)); |
||
mardon Profil |
#8 · Zasláno: 9. 4. 2009, 08:26:50 · Upravil/a: mardon
„$datum_pro_mysql=$prevod2[2]."-".$prevod2[1]."-".$prevod2[0]." ".$prevod[1];“
ještě tam chybí sekundy $datum_pro_mysql=$prevod2[2]."-".$prevod2[1]."-".$prevod2[0]." ".$prevod[1].":00"; „nebo“ „1 $datum_pro_mysql=StrFTime("%Y-%m-%d %H:%M:%S",StrToTime($datum));“ úžasné jednoduché elegantní díky za inspiraci |
||
cistax Profil |
#9 · Zasláno: 10. 4. 2009, 16:53:00
co treba to vkladat do policka v db, kde je typ VARCHAR? to by neslo?
|
||
AM_ Profil |
#10 · Zasláno: 10. 4. 2009, 17:51:28
cistax
Samozřejmě, prasácky to jde udělat vždycky. |
||
Watchick Profil |
#11 · Zasláno: 10. 4. 2009, 18:10:40
AM_
:D aha...... a v čem je rozdíl? |
||
AM_ Profil |
#12 · Zasláno: 10. 4. 2009, 18:34:19 · Upravil/a: AM_
Watchick
Rozdíl začne třeba tam, když si budeš chtít seřadit záznamy podle data. Co takhle něco jako $datum = strtotime(@$_POST['datum']); mysql_query("INSERT INTO clanky (jmeno, datum) VALUES ('$jmeno', FROM_UNIXTIME($datum)"); |
||
cistax Profil |
#13 · Zasláno: 11. 4. 2009, 19:22:43
hm, ja jsem prase:D prijde mi to jako nejjednodussi zpusob
|
||
Časová prodleva: 15 let
|
0