繁体   English   中英

当我输入$ time = strftime('%c'); 它在数据库中显示值00:00:00

[英]when i am entering $time=strftime('%c'); it showing value 00:00:00 in database

<?php
$con=mysqli_connect("localhost","root","","admin");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
$time=strftime('%c');
 $sql="INSERT INTO bookreserve(libid,bookid,issuedate ,time)
VALUES
('$_POST[libid]','$_POST[bookid]','$_POST[issuedate]','$time')";
if (!mysqli_query($con,$sql))
  {
  die('Error: ' . mysqli_error($con));
  }
  echo "wait for conformation";

mysqli_close($con);
?>

当我看到我的bookreserve表时,时间列中的值是00:00:00

您为strftime()选择了错误的修饰符,因为时间字段必须采用HH:mm:ss格式。 在这种情况下,您需要:

$time=strftime('%H:%i:%s'); // date('H:i:s') would probably also suffice

或者您为数据库列选择了错误的数据类型。 如果您确实想要%c格式的日期,则应将其更改为varchar。 (我认为varchar(23)应该起作用)。

您也可以只更改查询以使用MySQL自己的功能:

$sql="INSERT INTO bookreserve(libid,bookid,issuedate ,time)
VALUES
('$_POST[libid]','$_POST[bookid]','$_POST[issuedate]',NOW())";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM