有人能告诉我为什么这个查询错了吗?
$tbl_name = "Attributes";
$pieces = //some array
//other variables... blah blah blah
$query = "INSERT INTO $tbl_name (Word, What, When) VALUES";
foreach($pieces as $word){
$query .= "('$word', '$What', '$When'),";
}
$query = substr($query, 0, -1); //to remove the last comma
mysql_query($query) or die(mysql_error());
如果你能说,我试图用一个查询插入多行。当我尝试运行它时,我遇到语法错误,但我99.9999%肯定没有拼写错误。我是否通过尝试一次插入多行来做错事?
答案 0 :(得分:2)
当是保留字时,要么将其包装在`中,要么使用其他字。 MySQL保留字列表: http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html
答案 1 :(得分:0)
是否有可能在你的$ word中的某个时刻,$ what,$当你有一个'未被删除的?还是一些mysql注入?
如果是,我会尝试使用mysql_real_escape_string http://php.net/manual/en/function.mysql-real-escape-string.php