我的代码出现了一个很有趣的问题。基本上,当我第一次运行代码时,我从mysqli_effected_rows()函数中得到了正确的结果。但第二次我运行相同的脚本,它一直给我"-100“
如果删除表中的所有记录并再次运行代码,则可以从mysqli_effected_rows()函数中获得正确的结果。
"-100“是错误代码吗?
$count ="";
foreach($database as $key=>$value) {
foreach($value as $field => $cell){
if ($field =='itemid') {
echo "the item id is $cell <br />";
$col1 = $cell ;
}
elseif ($field =='title') {
echo "the title is $cell<br />";
$col2 = $cell;
}
elseif ($field =='starttime') {
echo "the start time is $cell<br />";
$col3 = $cell;
}
}
$dbquery = "INSERT INTO cordless_drill(itemid,title,starttime) VALUES ('$col1','$col2','$col3')";
mysqli_query($dbc,$dbquery);
$count += mysqli_affected_rows($dbc);
}
echo $count ;发布于 2014-03-01 15:00:46
通过上一次与INSERT关联的UPDATE、REPLACE或DELETE查询获取受影响的行数。MySQL连接。如果未指定链接标识符,则假定mysql_connect()打开的最后一个链接。如果没有找到这样的链接,它将尝试创建一个链接,就像调用mysql_connect()时没有参数一样。如果没有找到或建立连接,则会生成E_WARNING level错误。返回成功时受影响的行数,如果上次查询失败,则返回-1。在尝试$count += mysqli_affected_rows($dbc);之前,请尝试回显mysqli_affected_rows($dbc)的值.检查任何警告发生..。
https://stackoverflow.com/questions/22115622
复制相似问题