INSERT: Zeitangabe

Hattrix

Erfahrenes Mitglied
Hallo,

ich habe gegoogelt, was das Zeug hält, finde aber wenig dazu.

Ich möchte mit INSERT INTO eine >>Zeit<< eintragen lassen. TIME(), DATE(); NOW() führten nicht zum Erfolg. Da blieb das Feld immer auf 0 stehen!

Edit:

Zeitangabe in Datenbank von anderen System aus:

in sql: "1161851580" bedeutet 26.10.2006 und/oder 10:33 Uhr
 
Zuletzt bearbeitet:
1.) eine SQL Datenbank

2.) $strSQL = "INSERT INTO phpkit_content (content_id,content_cat,content_time,content_title,content_autor,content_text,content_altdat,content_option,content_status,content_subid,content_expire,content_header,content_autorid,content_themeid,content_views,content_rating,content_rating_total,content_comment_status,content_rating_status,content_ubb,content_html,content_smilies,content_filesize,content_template,content_teaser,content_related,content_spieltag) VALUES ('','".$_POST["berichtart"]."','Zeitangabe rein','".$_POST["titel"]."','".$USER["nick"]."','".$_POST["text"]."','',1,1,0,0,'',0,0,0,0,0,1,1,1,1,1,0,'','','','".$_POST["spieltag"]."')";

3.) Feld "content_time"
Typ INT (14)
Attribute UNSIGNED
NULL not null
standard 0
 
1.) Ich meinte das RDBMS: mySQL, ORACLE, MS SQL ?
Aber ich denke mal mySQL... in Zukunft bitte immer im Titel mit angeben!

2.) Deine Zeitangabe "1161851580" ist ein UNIX Timestamp und gibt die Anzahl Sekunden seit dem 1.1.1970 zurück. Die PHP Funktion time() sollte dir das eigentlich liefern.
PHP:
   $tstamp = time();
Da dein Datenbankfeld als INT definiert ist, kannst du den Wert auch ohne die '' einfügen.

Anm.: Du solltest niemals direkt $_POST oder $_GET Variablen in einem SQL Statement verwenden, das birgt große Gefahr bezgl. SQL - Injection
 
Code:
$tstamp = time(); 

$strSQL = "INSERT INTO phpkit_content (content_id,content_cat,content_time,content_title,content_autor,content_text,content_altdat,content _option,content_status,content_subid,content_expire,content_header,content_autorid,content_themeid,c ontent_views,content_rating,content_rating_total,content_comment_status,content_rating_status,conten t_ubb,content_html,content_smilies,content_filesize,content_template,content_teaser,content_related, content_spieltag) VALUES ('','".$_POST["berichtart"]."','".$tstamp."','".$_POST["titel"]."','".$USER["nick"]."','".$_POST["text"]."','',1,1,0,0,'',0,0,0,0,0,1,1,1,1,1,0,'','','','".$_POST["spieltag"]."')";

So richtig?
 
Nun möchte ich genau so eine Zeitangabe auslesen aus der Datenbank und diese soll in ein richtiges Datum + Zeit umgewandelt werden.

Wie mache ich das?
 
Zuletzt bearbeitet:
Hi,

versuch es mal mit der Funktion date() bei PHP.

echo date("H:i:s", $feld_aus_datenbank);

Das gibt dir dann Stunden Minuten und Sekunden aus.
Was du noch alles damit anstellen kannst kannst du ja bei http://www.php.net nachschauen.

Gruß
King of Darkness
 
Zurück