@artem20152000

Почему не срабатывает код pdo php?

В общем есть такой код:
<?php
	include_once("../include/db.php");

	if(isset($_POST['submit'])){
		$comment_text = $_POST["comment"];
		$id = $_POST["id"];

		$sql = "INSERT INTO a_comments VALUES(NULL, :c_text, :user_id, :user_login, :to, 0)";
		$res = $db->prepare($sql);

		$res->bindValue(":c_text", $comment_text);
		$res->bindValue(":user_id", $_COOKIE["user_id"]);
		$res->bindValue(":user_login", $_COOKIE["user_login"]);
		$res->bindValue(":to", $id);

		if($res->execute()){
			header('Location: http://www.websmash.net/article/index.php?id='.$id);
		}else{
			echo "There is an error";
		}
	}
?>


Запрос почему-то не срабатывает, пишет "There is an error"
  • Вопрос задан
  • 143 просмотра
Пригласить эксперта
Ответы на вопрос 2
@magazovski
Надо вывести подробную ошибку
...
if($res->execute()){
      header('Location: http://www.websmash.net/article/index.php?id='.$id);
    }else{
      $arr = $res->errorInfo();
      print_r($arr);
    }
...


php.net/manual/ru/pdostatement.errorinfo.php
Ответ написан
Комментировать
@krypt3r
Вы биндите переменные, которые могут вообще не существовать. Заюзайте isset(), а лучше постройте правила валидации входных данных
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы