当我使用此代码供人们输入数据时,我收到此错误。提交表格不会列出,因为它在这种情况下没用:
function some_more_custom_content() {
$output="<BR>";
ob_start();
if ($_REQUEST['code'] != "") {
$code = $_REQUEST['code'];
$query="INSERT INTO `fc` (`code`,`datetime`) values ('" . mysql_real_escape_string($code) . "', now())";
$result=mysql_query($query);
while ($fetch_array = mysql_fetch_array($result)) {
$seconds = time() - strtotime($fetch_array["datetime"]);
if ((time() - $entry['datetime']) < 60*60) {
echo ("The code " . htmlentities($code) ." was updated less than an hour ago.");
} else {
echo ("Inserted " . htmlentities($code) ." into the top.");
}
}
}
知道为什么吗?
答案 0 :(得分:4)
INSERT
语句不返回资源,成功时返回TRUE
或失败时返回FALSE
。因此,mysql_fetch_array()
没有资源可供使用。
(这是人们抱怨PHP的主要原因之一 - 它的语义充其量不一致。)
答案 1 :(得分:2)
if($result!==FALSE) {
// the insert was ok
} else {
//the inser failed
}
答案 2 :(得分:0)
变化:
$result=mysql_query($query);
使用:
$result=mysql_query($query) or die(mysql_error());
你会看到错误。