phpbar.de logo

Mailinglisten-Archive

[php] Datum automatisch in mySQL-Datenbank setzten

[php] Datum automatisch in mySQL-Datenbank setzten

Martin Samesch martin.samesch_(at)_vogelspinnenseite.de
Mon, 04 Sep 2000 19:42:02 +0200


Hallo Michael,

Michael Dorfmüller wrote:
> 
> ich habe ein Problem bei der Eingabe von Datensätzen über ein
> PHP-Script in die mySQL-Datenbank.
> 
> ich nutze       mySQl   Version :       3.21.33b
>                 PHP     Version :       3.06
>                 Apache  Version :       1.34
                                          ^^^^
....wow! ;-)

>           Linux Kernel  Version :       2.0.36

Sieht irgeendwie nach Debian 2.1 aus....
 
> In der Datenbank habe ich ein Feld als timestamp mit sechs Zeichen
> definiert (YYMMDD). Bei der Anlage eines neuen Datensatzes versuche
> ich automatisch das neue Datum in die Datenbank einzugeben.

Ein Blick ins MySQL Manual (3.23.22-beta-7) laesst mich vermuten, dass
Du einen anderen Feltypen verwenden solltest.

Feldtyp         Format 
-----------------------------------------------------------
DATETIME        '0000-00-00 00:00:00' 
DATE            '0000-00-00' 
TIMESTAMP       00000000000000 (length depends on display size) 
TIME            '00:00:00' 
YEAR            0000

Oder Du nimmst TIMESTAMP....

BTW,

Feldtyp                 Format
----------------------------------------
TIMESTAMP(14)           YYYYMMDDHHMMSS 
TIMESTAMP(12)           YYMMDDHHMMSS 
TIMESTAMP(10)           YYMMDDHHMM 
TIMESTAMP(8)            YYYYMMDD 
TIMESTAMP(6)            YYMMDD 
TIMESTAMP(4)            YYMM 
TIMESTAMP(2)            YY 

....und baust das per Script ins gewuenschte Format um.

Hmmmm, etwas weiter unten im o.g. Manual.....

NOW() 
SYSDATE() 
CURRENT_TIMESTAMP 
   Returns the current date and time as a value in 'YYYY-MM-DD
   HH:MM:SS' or YYYYMMDDHHMMSS format, depending on whether the
   function is used in a string or numeric context. 

Es funktioniert also vielleicht auch ganz einfach mit 

mysql("datenbank","INSERT INTO tabelle VALUES ('','a',now(),'','')");

statt mit

> mysql("datenbank","INSERT INTO tabelle VALUES ('',
> 'a','now()','','')");
      ^     ^
Und wie Dir vielleicht aufgefallen, habe ich mir die Muehe gemacht, ins
Manual zu schauen. Zeitaufwand ca. 2-3 Minuten ;-)

Gruss,
Martin


php::bar PHP Wiki   -   Listenarchive