What is the proper php/mySQL syntax to insert a date/timestamp into a text column of mysql table using insert command

I've been trying to insert a record into a table using some values from a form, which was working until
i tried adding a timestamp field, it only seems to work if i put a static string in it. I though the code below should work, but it doesn't. Here is an example string that is contained in the variable today
"November 14, 2008, 8:46 am"
I figured maybe my problem is on the comma's or the colon, but don't know what to do about it.

$today = date("F j, Y, g:i a");

$query = "insert into myTable values (NULL,$today)";

 $result = $db->query($query);


I also tried using  SELECT NOW(); which works on the command line to mySQL, but again don't know how to syntax it correctly to be used as an input to the insert statement

The column i'm trying to insert it into is defined as char(30)
mitchguyAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

ZeroWorksCommented:
Hi!
Try this
November 14, 2008, 8:46 am
 $query = "insert into myTable values (NULL, DATE_FORMAT(NOW(), '%M %e, %Y, %h:%i %p'))";
More info on
http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-format
Hope it helps!
0
NoiSCommented:
To insert the current datetime

USE

$sql = "INSERT INTO table (datetime_timestamp_field) VALUES (NOW())";

for your code the best way is use YEAR-MONTH-DAY HOUR:MIN:SEC

$today = date("Y-m-d H:i:s");

$query = "insert into myTable values (NULL,$today)";

 $result = $db->query($query);
0
Roger BaklundCommented:
The problem with your query is that you have omitted the required apostrophes. This is wrong:

$query = "insert into myTable values (NULL,$today)";

It should be:

$query = "insert into myTable values (NULL,'$today')";
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
mitchguyAuthor Commented:
The apostrophes worked!  
A rookie mistake, I had tried that before, but forgot to try it again after changing my field from char(20) to char(30) after i noticed my string was longer than 20.

Thanks for all of your inputs.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
PHP

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.