Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Не добавляется статья на сайт
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Не добавляется статья на сайт

Страниц (1): [1]
 

1. Vadim666 - 06 Декабря, 2016 - 12:35:44 - перейти к сообщению
Не добавляется статья в базу данных, ошибок нету, помогите кто может

Controller:
<?php

include_once ROOT . '/models/Add.php';

class AddController{

public function actionCreate(){

if(isset($_POST['submit'])){

$options['title'] = $_POST['title'];
$options['short_content'] = $_POST['short_content'];
$options['content'] = $_POST['content'];
$options['author_name'] = $_POST['author_name'];

$errors = false;

if (!isset($options['title']) || empty($options['title'])){
$errors[] = 'Заповніть поле';
}

if($errors == false) {

// Если ошибок нет. Добавляем новый рецепт

$id = Add::createArticle($options);

// Если запись добавлена
if($id) {
header("Location: /");
}

}


}

require_once (ROOT . '/views/add/index.php');

return true;

}

}

Model:
<?php

class Add{

public static function createArticle($options){

$db = Db::getConnection();

$sql = 'INSERT INTO article '
. '(title, short_content, content, author_name)'
. 'VALUES '
. ':title, :short_content, :content, :author_name)';

$result = $db->prepare($sql);
$result->bindParam(':title', $options['title'], PDO::PARAM_STR);
$result->bindParam(':short_content', $options['short_content'], PDO::PARAM_STR);
$result->bindParam(':content', $options['content'], PDO::PARAM_STR);
$result->bindParam(':author_name', $options['author_name'], PDO::PARAM_STR);

if($result->execute()){
return $db->lastInsertId();
}
return 0;
}

}

Views:


<form action="#" method="post" enctype="multipart/form-data">

<p>Назва статті:</p>
<input type="text" name="title" placeholder="" value="">

<p>Коротка стаття:</p>
<textarea name="short_content"></textarea>

<p>Повна стаття:</p>
<textarea name="content"></textarea>



<p>Автор:</p>
<input type="text" name="author_name" placeholder="" value="">
<br/>
<br/>
<input type="submit" name="submit" placeholder="" value="Добавити">
</form>

</div>

</div><!-- /.container -->
2. Sail - 06 Декабря, 2016 - 14:58:36 - перейти к сообщению
Vadim666, однако, скобку пропустили открывающую для значений в запросе на вставку
3. Vadim666 - 06 Декабря, 2016 - 17:43:51 - перейти к сообщению
Sail пишет:
Vadim666, однако, скобку пропустили открывающую для значений в запросе на вставку


Где именно подскажите пожалуйста, а то не вижу
4. Sail - 07 Декабря, 2016 - 08:23:15 - перейти к сообщению
Vadim666 пишет:
Где именно подскажите пожалуйста, а то не вижу

Перед :title

 

Powered by ExBB FM 1.0 RC1