@AFI19

Почему не добавляет данные в базу данных?

Добрый вечер! Помогите, пожалуйста. Есть форма, которая передает через ПОСТ данные в файл, где они попадают в свойство обьекта, после выполняется запрос который должен их добавить. Но, ничего не добавляет. Пост с данными, обьект принимает нужные свойства но, не работает. Пару дней назад все работало, другие подобные схемы работают.
Форма
<div class=com_block><div class=addcom>
	<form method=POST action=php/scripts/add_coment.php>
	<input type=text name=comment>
	<input type=text hidden=hidden name=login value={$_SESSION['login']}>
	<input type=text hidden=hidden name=user_id value={$_SESSION['user_id']}>
	<input type=text hidden=hidden name=news_id value={$_GET['id']}>
	
	<input type=submit value=Отправить комментарий>
</form></div>


файл который обрабатывает
<?php
require_once ("../classes/comments.php");


if (isset($_POST)) 
{
	$new_com = new Comment($_POST);
	$new_com->addComment();
	print_r($_POST);
	echo "<pre>";
	print_r($new_com);
	echo "</pre>";
	unset($_POST);
	//header("Location: ".$_SERVER['HTTP_REFERER']);
}

Результат print_r
67fd6470a9a8474ba8e683dc9544cd30.png
Класс и запрос

<?php
require_once ("db.php");

class Comment extends DB {
  public $content;
  public $date;
  public $user_id;
  public $news_id;
  public $login;

  public function __construct(array $a) {
    $this->content = $a['comment'];
    $this->date = date("Y-m-d H:i:s");
    $this->user_id = $a['user_id'];
    $this->news_id = $a['news_id'];
    $this->login = $a['login'];
  }

  public function addComment() {
    $quer = "INSERT INTO `coments`(`id`, `content`, `date`,`login`, `news_id`, `user_id`) VALUES ('','$this->content','$this->date','$this->login',$this->news_id','$this->user_id')";
    $add_com = DB::obj()->connect()->exec($quer);
  }
  • Вопрос задан
  • 212 просмотров
Решения вопроса 1
для начала я бы убал заполнение id,
потом обернул все свойства в {$this->news_id}
а потом бы просто внимательно пригляделся и увидел пропущенную ковычку :-)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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