Intereting Posts
Отправка полученных заказов woocommerce дилерам, отправляющим уведомления по электронной почте Нарушение родительской функции из дочерней функции (PHP Preferrably) Куки-файлы по субдоменам и хостам Есть ли лучший способ обрабатывать 300 000 строк текстовых файлов и вставлять их в MySQL? Синтаксис обновления MySQL с помощью скобок Как получить чистые URL-адреса только для двух переменных? PHP для EasyPHP MySQL сервер 1 секунда задержки соединения Получение образования с помощью API-интерфейса Facebook в PHP Можно ли обрабатывать SELECT, SELECT COUNT и перекрестные таблицы ссылок только одним запросом? Отключите кнопку «ставка» на страницах продукта WooCommerce для автора mySQL: объединение трех таблиц – как? Как получить число последователей страниц в Instagram? подготовленное заявление с Eloquent ORM / laravel Выберите поле с первой опцией пустым Получить заголовок запроса Content-Type в PHP

Вызов функции-члена bind_param () для не-объекта MySQLi

Хорошо, поэтому я пытаюсь обновить запись в блоге, и я получаю вызов функции-члена bind_param () для не-объекта при попытке запустить скрипт. Я провел обширные исследования, чтобы понять, могу ли я сам это исправить, но я должен что-то упустить.

<?php $stmt = $mysqli->prepare("UPDATE blogentries SET headline = ?, image = ?, caption = ?, article = ? WHERE id = ?"); $stmt->bind_param('ssssi', $_POST['headline'], $_POST['image'], $_POST['caption'], $_POST['article'], $_POST['id']); $stmt->execute(); $stmt->close(); ?> 

Заранее спасибо,

Остен

Обновление: вот соединение db

Я добавил дополнительное $ mysqli соединение для целей отладки, и ошибка возникает даже без него.

$stmt , вероятно, false .

 if ($stmt = $mysqli->prepare(...)) { $stmt->bind_param(...); ... } else { printf("Errormessage: %s\n", $mysqli->error); } 

Я решил это путем проверки запросов вручную. Оказалось, что нужно помещать каждое имя поля между обратными тиками и удалять любые кавычки с параметрами, помеченными вопросительными знаками внутри запроса.

Если все подключения к базе данных верны, попробуйте найти синтаксис в запросе. Для меня я выполнял соединение и не указывал «TABLENAME» в поле where where, для которого обе таблицы имеют столбец.