Php en datum
Ik heb een site met wat onderwerpen, en daar kunnen mensen dan berichten achterlaten via php, wat dan uiteraard in een database wordt neergekieperd. Nu lukt dat wel met de Naam, Email en bericht, maar ik wil ook graag dat er een datum bij komt. Hoe zorg ik ervoor dat de datum+tijd ook via een formulier (of zonder) in mijn database komt?
Mvg, Don
Maak een veld in de database met kenmerk DATETIME en vul die met NOW().
Dit stukje SQL zet de huidige datum (en tijd wanneer je een DATETIME als veldtype gebruikt) in de kolom 'datumveld'.
En wat zet ik dan in mijn php code/html code form?
"INSERT INTO
tabelnaam(naam, email, bericht, datumveld)
VALUES($varnaam,$varemail,$varbericht, NOW())"
Als ik die query's intype, krijg ik:
#1054 - Unknown column 'datumveld' in 'field list'
en/of:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near blabla
Wat als ik gewoon een rij in de tabel aanmaak, met de naam Datum. Moet het type dan DATE zijn?
Wat moet ik dan bij Lengte/Waardes, Collatie, Attributen, Null en standaardwaarde zetten?
Omg, ik ben aardig mysql noob, ghehe, sorry daarvoor.
`naam` datetime NOT NULL default '0000-00-00 00:00:00'
http://nl3.php.net/manual/en/function.date.php
http://nl3.php.net/manual/en/function.time.php
http://nl3.php.net/manual/en/function.setlocale.php
Joshua:
en eventueel als je php zelf wilt gebruiken voor de datum kun je dit eens even lezen:
http://nl3.php.net/manual/en/function.date.php
http://nl3.php.net/manual/en/function.time.php
http://nl3.php.net/manual/en/function.setlocale.php
http://nl3.php.net/manual/en/function.date.php
http://nl3.php.net/manual/en/function.time.php
http://nl3.php.net/manual/en/function.setlocale.php
Dat raad ik je ten sterkste af. De foutmelding die jij krijgt betekend dat het veld 'datumveld' niet in jouw tabel voorkomt.
Die moet je dus nog even toevoegen. UIteraard met als DATETIME(8)
Gewijzigd op 01/01/1970 01:00:00 door Klaasjan Boven
Klaasjan:
UIteraard met als DATETIME(8)
DATETIME alleen is genoeg.