another_dream
@another_dream
Backend-разработчик, Laravel/ZF2/Yii2

Почему не отрабатывает bind_param()?

include '../../../function/db.php';
// Запишем POST данные в переменые для более простого манипулирования оными;
$id = $_POST['id'];
$name = htmlentities($_POST['name'], ENT_QUOTES, "UTF-8");
$link = htmlentities($_POST['link'], ENT_QUOTES, "UTF-8");
$coverage = htmlentities($_POST['coverage'], ENT_QUOTES, "UTF-8");
$followers = htmlentities($_POST['followers'], ENT_QUOTES, "UTF-8");
$grid =  htmlentities($_POST['grid'], ENT_QUOTES, "UTF-8");
$price = htmlentities($_POST['price'], ENT_QUOTES, "UTF-8");
$desc = htmlentities($_POST['desc'], ENT_QUOTES, "UTF-8");
$logo = $_POST['logoLink'];
$category = $_POST['category'];

switch ($category) :
    case 1 :
        $category = "Наши сообщества";
        break;
    case 2:
        $category = "По городам";
        break;
    default :
         $category = "Наши сообщества";
         break;
endswitch;
var_dump($category);
//Подготовка и бинд параметров для запроса;
$query = "UPDATE grounds SET name=?, logo=?, link=?, coverage=?, followers=?, price=?, grid=?, desc=?, category=? WHERE id = ?";
$editGround = $sql->prepare($query);
$editGround->bind_param("sssiiiissi",$name,$logo, $link,$coverage,$followers,$price,$grid,$desc,$category,$id);

Ошибка распространенная: Call to a member function bind_param() on a non-object.
Проверил все переменные, проверил базу на типы переменных. Все должно быть нормально, но нет. В чем ошибка? Спасибо.
  • Вопрос задан
  • 2320 просмотров
Решения вопроса 1
Rpsl
@Rpsl
Кратко о себе
Ошибка не в bind_params, а в prepare.

prepare не срабатывает, в результате чего $editGround = false, а потом вы пытаетесь сделать

false->bind_param(....)

Разбирайтесь с prepare.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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