Intereting Posts
Doctrine 2 – Log изменяет отношение manyToMany Как создать пароль хэширования laravel Как показать непрерывные обновления в реальном времени, такие как facebook ticker, домашняя страница meetup.com? Поддерживает ли PHP короткий синтаксис для объектов? Проверка даты, которая выпадает на рабочий день или на выходные? Заполнение второго окна выбора в зависимости от первой опции окна выбора суммирование активной записи в кодеригнере fb_exchange_token для PHP работает только после того, как пользователь удалит приложение Неустранимая ошибка: вызов неопределенной функции mcrypt_encrypt () Как я могу разбить строку при первом появлении «-» (знак минус) на два $ vars с PHP? «Неустранимая ошибка: класс не найден в ..», пакет композитора не распознан Как я могу использовать часового с laravel 5? PHP Перенаправить обновление силы (CTRL + F5) Как сгенерировать все перестановки строки в PHP? Команда Exec работает не так, как ожидалось

PHP bind_params с нулевым

Я пытаюсь связать params с инструкцией INSERT INTO MySQLi, если эта переменная существует, иначе вставьте null.

Это то, что у меня есть, но оно не работает:

if (!empty($name)) { $result->bind_param('ss', $name, $url_friendly_name); } else { $result->bind_param('ss', null, null); } if (!empty($description)) { $result->bind_param('s', $description); } else { $result->bind_param('s', null); } 

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

Solutions Collecting From Web of "PHP bind_params с нулевым"

bind_param работает по ссылке. Это означает, что он принимает переменную, а затем использует значение этой переменной при execute .

null – это не переменная.

Попробуйте установить переменную в значение null а затем привяжите эту переменную.

(Также рассмотрите использование PDO вместо mysqli, где метод execute может принимать простой массив, и вы можете обойти дурацкую методологию привязки mysqli.)

Имейте в виду, что вы не можете использовать bind_param дважды, потому что последний оператор заменит первый. Попробуйте найти способ использовать bind_param только один раз.