» »

Timestamp v php in mysql

Timestamp v php in mysql

Baja ::

en (meni )nejasen problem.

v phpju generima cajt z time(); . ga izpisem na stran in v mysql bazo v polje vrste timestamp. Ko grem pogledat v bazo vidim da je stevilka v bazi skoraj enkrat vecja kot izpisana.

A mi lahko kdo prosim razlozi zakaj ?

darh ::

Format zapisa najbrž ni čisto tak kot pričakuješ. Če si pogledaš manual na tejle strani, lahko vidiš kako MySQL uporablja polje TIMESTAMP; npr: YYYYMMDDHHMMSS, ali YYYYMMDD.

PHPjeva funkcija time() ti vrne število sekund od "epoha" -- od 1. 1. 1970. Cifra je malo manjša...



Nasvet (IMHO): Za shranjevanje datumov in časa v MySQL uporabi tip polja DATETIME (ter DATE in TIME; vse je opisano tu).


Če bi rad dobil epoch ob selectu:
> SELECT UNIX_TIMESTAMP(ime_polja);





Če izpišeš vrednosti:
> SELECT UNIX_TIMESTAMP(NOW());


in vrednost PHPjeve funkcije time();

Boš najbrž dobil isti rezultat.



Drugič, ko ustvarjaš tabele, imej pri roki dokumentacijo. Tako si lahko 100% o tem, da delovalo tako kot hočeš.
Excuses are useless! Results are priceless!

Baja ::

Sem spremenjo polje v int in stvar deluje tako kot sem si zamislo.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Optimizacija MySQL - query / tabela

Oddelek: Programiranje
443688 (2276) MrStein
»

Pomoč pri zapisu php scripte

Oddelek: Izdelava spletišč
81134 (976) technolog
»

[PHP]Timestamp in mysql

Oddelek: Programiranje
82252 (1917) 680x0
»

[PHP + mysql] Kako vstaviti več vrstic naenkrat ?

Oddelek: Programiranje
131432 (1239) Ziga Dolhar
»

urejanje - mysql -

Oddelek: Izdelava spletišč
61157 (1073) darh

Več podobnih tem