How do add date and time stamp to an INSERT via PHP with mySQL?

前端 未结 4 1744
感动是毒
感动是毒 2021-01-24 18:38

I have an insert script with mySQL. I need to place the date and time when the record is created in the \'add_time\" column.

Can anyone show me how to modify my existin

相关标签:
4条回答
  • 2021-01-24 19:11

    You do not need to insert data to that column from PHP at all:

    TIMESTAMP and DATETIME columns can be automatically initializated and updated to the current date and time (that is, the current timestamp).

    So change the add_time column definition to

    add_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
    

    and then it will automatically populate the column for you when you insert a new row

    See: MySql Manual on Timestamp Initializations

    0 讨论(0)
  • 2021-01-24 19:15

    Add 'time' column to your 'cartons_added' table.

    And use this as order

    $order = "INSERT INTO cartons_added (type, part_no, add_type, add_qty, 
      add_ref, add_by, add_notes, time)
    
      VALUES
      ('$_POST[type]', 
      '$_POST[part_no]', 
      '$_POST[add_type]', 
      '$_POST[add_qty]', 
      '$_POST[add_ref]', 
      '$_POST[add_by]', 
      '$_POST[add_notes]',
      '".time().")";
    
    0 讨论(0)
  • 2021-01-24 19:25

    You got the "add_time" column set up in your database? Is it of DATETIME format?

    In that case you may just modify your query like this:

    $order = "INSERT INTO cartons_added (type, part_no, add_type, add_qty, 
      add_ref, add_by, add_notes, add_time)
    
      VALUES
      ('$_POST[type]', 
      '$_POST[part_no]', 
      '$_POST[add_type]', 
      '$_POST[add_qty]', 
      '$_POST[add_ref]', 
      '$_POST[add_by]', 
      '$_POST[add_notes]',
       NOW())";
    

    Though you should be aware that executing queries like this is dangerous as you trust the user to input only nice things! Google "SQL Injection" to find out more about it, mysql_real_escape_string(), too.

    0 讨论(0)
  • 2021-01-24 19:25

    I like Sam's answer, as it is best - as an alternative, however, you could use date("m/d/Y H:i A"); as per your requirements - ie. it will output MM/DD/YYYY HH:MM AM/PM. Though if you use Sam's method, it will require less code, but you'd need to convert it to get you desired format.

    0 讨论(0)
提交回复
热议问题