插入时我做错了什么?

时间:2011-08-11 06:53:56

标签: php mysql sql

我试过了两次

$query = "INSERT INTO reservation VALUES ('".$hour."','".$minute."','".$day."','".$month."','".$year."','".$name."','".$table."')";

$query = "INSERT INTO reservation VALUES ('$hour','$minute','$day','$month','$year','$name','$table')";

但是没有一个工作,我得到一个空白页面,我的错误日志没有错误。我尝试对所有变量做回声,然后得到了它们的值。

这是整体功能:

function makeReservation($trtime,$hour,$minute,$day,$month,$year,$name,$table,&$db)
{
//$query = "INSERT INTO reservation VALUES ('".$hour."','".$minute."','".$day."','".$month."','".$year."','".$name."','".$table."')";
$query = "INSERT INTO reservation VALUES ('$hour','$minute','$day','$month','$year','$name','$table')";
$result = $db->query($query) or die(mysql_error());
}

2 个答案:

答案 0 :(得分:0)

你发布的php看起来很好。

如果你得到一个空白页面,那么在函数调用之前可能会出现问题。也许解析错误?

如果您在错误日志中没有看到任何内容,请尝试更改php.ini中的错误日志记录设置。

display_errors = E_ALL

如果您使用的是共享主机,则通常可以使用.htaccess http://davidwalsh.name/php-values-htaccess覆盖

答案 1 :(得分:0)

我会提出一些建议。首先,当你说没有错误时,我会假设你真的知道你在做什么。

1)确保您使用好的数据库。您可以执行SHOW TABLES查询以查看其中包含的表格,或SELECT * FROM reservation查看其内容。
2)在插入行之后,执行SELECT * FROM reservation查询并检查您的行是否在那里 3)确保你打电话给你的功能......

然后,正如我在评论中所说,你应该使用DATETIME类型而不是使用不同的列来表示小时,分钟等。如果需要选择特定属性,请使用适当的函数(例如,{{1} })
整数周围的引号不应该使您的查询失败,但如果没有必要,它仍然可以更好地删除它们(并确保您正确地转义数据)。