MySQL INSERT INTO无故障地失败而没有错误

时间:2011-03-28 08:37:08

标签: php mysql

$dotheactvity = $db->db_exec("INSERT INTO activity (notification, by, on, extra, extra2) VALUES ('$nou', '$nome', '$tehtime', '$herpdederp', '$id2')");

出于某种原因,此查询在没有警告的情况下失败。其他一切都有效,但不是这一行。我查了一下,所有变量都存在。我似乎也无法在日志中找到任何东西。

(请原谅我在命名我的论据时不成熟)

3 个答案:

答案 0 :(得分:5)

byonMySQL reserved words

尝试将它们封闭在后面。

答案 1 :(得分:1)

试试这个:

$sql = "INSERT INTO activity (notification, by, on, extra, extra2) VALUES ('".$nou."', '".$nome."', '".$tehtime."', '".$herpdederp."', '".$id2."')";

这可行的原因是你的值可能是需要用引号括起来的字符串值。

因此,当MySQL读取您的SQL时,它将如下所示:

INSERT INTO activity (notification, by, on, extra, extra2) VALUES ('val1', 'val2', 'val3', 'val4', 'val5');


您可以使用

检查SQL语句的格式
echo $sql;

print_r($sql);

var_dump($sql)

答案 2 :(得分:0)

通常我会先将查询字符串放在变量中,然后将其回显(仅用于调试)。发现错误会更清晰,更容易。而且,您可以复制并粘贴查询并在mysql控制台或phpmyadmin查询控制台中运行。它会告诉你那里的错误。

$sql = "INSERT INTO activity (notification, by, on, extra, extra2) VALUES ('$nou', '$nome', '$tehtime', '$herpdederp', '$id2')";
echo $sql;