我想要做的是通过文本输入循环,其中用户输入博客帖子的标签。如果它不存在,我想将每个标记添加到数据库。
当我在数据库中测试时,下面的实际查询字符串有效。
但是我认为我的循环语法可能不太正确因为我没有得到任何添加到数据库。
任何人都可以在我的循环中发现一个错误,导致我的'添加到数据库'失败?
在此先感谢您的帮助!
foreach ($_POST['__tags'] as $key=>$ls_value) {
$value = strtolower(mysql_real_escape_string($ls_value));
mysql_query("INSERT INTO `table` (`field`)
SELECT * FROM (SELECT '$value') as tmp
WHERE NOT EXISTS (
SELECT `field` FROM `table` WHERE `field` = '$value')
LIMIT 1") or trigger_error(mysql_error(), E_USER_ERROR);
}
在$ _POST ['__ tags']上回显或使用print_r返回什么?它是否返回任何东西? – 2013-03-19 04:33:56
您的代码易受sql注入攻击。此外,mysql_ *函数已弃用,应尽可能不再使用。 http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php – Cfreak 2013-03-19 04:38:26