【发布时间】:2015-06-03 01:48:02
【问题描述】:
我从一个表单多次插入到数据库中。代码如下:
if(isset($_POST['Submit']))
{
$UserID=$_POST['UserID'];
$StartTime=$_POST['StartTime'];
$StartDate=$_POST['StartDate'];
$EndTime=$_POST['EndTime'];
$EndDate=$_POST['EndDate'];
$TimeWorked=$_POST['TimeWorked'];
$i=0;
foreach( $UserID as $key => $n )
{
$UID=$UserID[$key];
$TW=$TimeWorked[$key];
$Stime =strtotime("{$StartTime[$key]} {$StartDate[$key]}");
$Etime = strtotime("{$EndTime[$key]} {$EndDate[$key]}");
echo $i."-".$n."::user Id".$UID.."//Stime:".$Stime."//Etime:".$Etime."<br/>";
$tasks = new Timesheets_Table_Tasks();
$tasks->createRow()
->setFromArray(array
(
'Date'=>time(),
'UserID'=>$UID,
'Time'=>$TW,
'StartTime'=>$Stime,
'EndTime'=>$Etime
))
->save();
$i++;
}
}
除了 StartTime 和 EndTime 之外的所有内容都插入到数据库中。我可以使用这条线显示值
'echo $i."-".$n."::user Id".$UID.."//Stime:".$Stime."//Etime:".$Etime."<br/>";'
(就在插入之前)。但是数据库中没有插入任何内容。
StartTime & EndTime 的示例值为 1427693580(timestamp)。
Mysql 结构:
- 类型:int(11)
- 空:是
- 默认值:NULL。
我不确定插入这两个字段会发生什么。插入后我在数据库中得到“NULL”。请帮我找出答案。
谢谢!
【问题讨论】:
-
因为您使用的是 Zend。我认为你必须使用 new Zend_Db_Expr('NOW()')。
-
什么是
$StartTime[$key]和$StartDate[$key]?请提供表单输入。 -
echo $Stime."={".$StartTime[$key]."}{".$StartDate[$key]."}";输出:1427704800={19:40}{03/30/2015}
标签: php mysql timestamp insertion