Intereting Posts
Кодирование и декодирование плавает в json с PHP без потери точности Yii2 фреймворк facebook и google логин с использованием authclient не работает массовое обновление списка значений из списка идентификаторов Преимущества / неудобства heredoc vs nowdoc в php PHP / MySQL 2 'while' из одного запроса mysql? вернуть JSON и разобрать в java, android установите флажки рядом с элементами таблицы html php Правильное формирование URL-адресов с помощью строки запроса и символа «хэштаг» PHP: извлечение строк из конца большого текстового файла Профайлер PHP с подсчетом выполнения, временем и т. Д. Без расширений PHP Неустранимая ошибка: невозможно вызвать перегруженную функцию для не объекта PHP $ _POST не работает, но $ _GET отлично работает Установка переменных $ _POST Изменение значений параметров команд Guzzle во время выполнения через плагины? Как мы можем получить конкретные ссылки, используя простой html dom

ВСТАВИТЬ в таблицу DB с подготовкой PDO и bindParam

В простых терминах кто-то может объяснить, что я делаю неправильно здесь – я просто пытаюсь вставить в db с помощью prepare и bindParam, это вставляет 0 и Null во все поля.

$sql = $db->prepare("INSERT INTO db_fruit VALUES (id=? ,type=? ,colour=?)"); $sql->bindParam(1, $newId); $sql->bindParam(2, $type); $sql->bindParam(3, $colour); $sql->execute() 

btw: этот метод работал для меня для UPDATE и т. д., но не в этом случае для INSERT

Related of "ВСТАВИТЬ в таблицу DB с подготовкой PDO и bindParam"

Ваш синтаксис неверен, попробуйте следующее:

 $sql = $db->prepare("INSERT INTO db_fruit (id, type, colour) VALUES (? ,? ,?)"); $sql->bindParam(1, $newId); $sql->bindParam(2, $name); $sql->bindParam(3, $colour); $sql->execute(); 

Расширяясь в ответе АО, также действуют следующие правила:

 $sql = $db->prepare("INSERT INTO db_fruit (id, type, colour) VALUES (? ,? ,?)"); $sql->execute(array($newId, $name, $color)); 

А также:

 $sql = $db->prepare("INSERT INTO db_fruit (id, type, colour) VALUES (:id, :name, :color)"); $sql->execute(array('id' => $newId, 'name' => $name, 'color' => $color)); 

Возможно, это будет личное предпочтение, но я считаю, что этот синтаксис намного чище.

 $sql = $db->prepare("INSERT INTO db_fruit (`id`, `type`, `colour`) VALUES (:id, :name, :colour)"); $sql->bindParam(':id', $newId, PDO::PARAM_INT); $sql->bindParam(':type', $type, PDO::PARAM_INT); $sql->bindParam(':colour', $colour, PDO::PARAM_STR); $sql->execute();