У меня нет шансов. Мой SQL-запрос будет отправляться только через PhpMyAdmin. Если я попытаюсь отправить этот конкретный запрос через PHP, я получаю сообщение об ошибке. Когда я копирую этот точный запрос в PhpMyAdmin, он проходит без проблем.Ошибка SQL возникает только в PHP-скрипте
INSERT INTO posts (id, content, poster, timestamp, tags) VALUES ('12056242', 'OMG I just got a #toyota', 'Clunker5', '09/12/14 08:43:36', 'toyota');INSERT INTO `tags` (tag, posts) VALUES ('toyota', 1) ON DUPLICATE KEY UPDATE posts=posts+1; UPDATE `tags` SET posts=posts+1 WHERE tag IN ('toyota');
Это PHP-код отношение к проблеме
//Ups one post for all tags entered by the user
if(!empty($tags)){
$tags1 = explode(",", $tags);
$tags_submit = join("','", $tags1);
$tags_insert = join("', 1), ('", $tags1);
$sql = "INSERT INTO posts (id, content, poster, timestamp, tags) VALUES ('$d', '$b', '".$_SESSION['username']."', '$c', '$tags');"
. "INSERT INTO `tags` (tag, posts) VALUES ('".$tags_insert."', 1)
ON DUPLICATE KEY UPDATE posts=posts+1;
UPDATE `tags` SET posts=posts+1 WHERE tag IN ('".$tags_submit."');";
$result = mysql_query($sql);
}else{
$sql = "INSERT INTO posts (id, content, poster, timestamp, tags) VALUES ('$d', '$b', '".$_SESSION['username']."', '$c', '$tags');";
$result = mysql_query($sql);
}
$error = mysql_error();
if($result){
echo "1";
}else{
echo error($sql, $error, "Tags: ".$tags, "Post: ".$b, "ID: ".$d);
}
Ошибка
SQL Response: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO `tags` (tag, posts) VALUES ('toyota', 1), ('ohmygoodness', 1) ' at line 1.
EDIT: Теперь, когда я знаю, что я не могу сделать мульти-запрос, как может Я делаю этот запрос?
INSERT INTO `tags` (tag, posts) VALUES ('".$tags_insert."', 1)
ON DUPLICATE KEY UPDATE posts=posts+1;
UPDATE `tags` SET posts=posts+1 WHERE tag IN ('".$tags_submit."');
Какая ошибка вы получаете? Вы проверяете mysql_error()? Вы убедились, что ваш запрос правильный после того, как переменные интерполированы? –
3-й подобный вопрос сегодня. –
'INSERT INTO теги (теги, сообщения) VALUES ('toyota', 1), ('ohmygoodness', 1)' - Я никогда не видел предложения VALUES, как это, как это работает? – David