【发布时间】:2014-06-21 04:38:39
【问题描述】:
我是 php 和 mysql 的初学者,我正在尝试编写代码以将值插入表中。问题是像$upval和$aday这样的一些变量被正确插入,但是$course和$chour被插入为零,请注意我在插入查询和回显之前回显了($course和$chour)打印正确的值(不是零)。
$res1=mysql_fetch_object($result1);
$course =$res1->cid;
$result2= mysql_query("select thoure from $tbl_name3 where cid='$course'");
$res2=mysql_fetch_object($result2);
$chour =$res2->thoure;
$sql ="insert into $tbl_name2 (SID,Cid,Tid,Adate,Ahoure) values ('$upval','$course','2','$aday','$chour')";
$result = mysql_query($sql);
我也尝试了另一种方式来编写查询,但同样的问题
$sql ="insert into $tbl_name2 (SID,Cid,Tid,Adate,Ahoure) values ('$upval','".$res1->cid."','2','$aday','".$res2->thoure."')";
【问题讨论】:
-
你应该在输入变量后打印出
$sql。答案将(可能)显而易见。 -
$course和$chour是数字还是字符串?相应的表列是否可以处理您插入的数据?如果您尝试在int字段中输入string,它将输入为0 -
@Gordon Linoff 将 $sql=insert 打印到缺席 (SID,Cid,Tid,Adate,Ahoure) 值 ('65','','2','2014-05-06', '')
-
@Mark M cid 字段是 int(11) 和 $course 值从另一个表中的字段 cid 返回,它具有相同类型 int(11)