Здравствуйте, у меня есть этот код, который не сработает. Я пробовал его около часа и не могу найти никаких ошибок, я не знаю, что это такое. Может быть, кто-то может помочь мне здесь.Заявление PDO, не вставляемое в базу данных
Вставка сценария:
<?php error_reporting(E_ALL); ini_set('display_errors',1);
require('connect.php');
$sql = "INSERT INTO products (name, description, price, url, category, artwork) VALUES ('john', 'john', 'john', 'john', 'john', 'john')";
if ($link->query($sql)) {
echo "<script>
alert('Data was added.');
window.location.href='dashboard.php';
</script>";
}
else {
echo "<script>
alert('Data was not added.');
window.location.href='dashboard.php';
</script>";
}
?>
Я пытаюсь добавить данные в свою базу данных, но он просто не будет добавлять данные, которые я дал его.
Вот мой скрипт соединения:
<?php
try {
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$link = new PDO("mysql:host=$dbhost;dbname=dbtesttest;",$dbuser,$dbpass);
} catch (PDOException $e) {
echo "Failed :" . $e->getMessage() . "\n";
}
?>
Любой получил ключ, что я делаю не так? Помимо использования предупреждений в php. Это не дает мне никаких ошибок, у меня есть база данных с фактическими атрибутами. Мне нужна помощь :(
Вы проверили, что запрос работает? Первое, что приходит в голову, это поместить строку в числовое поле (price -> 'john) – nvisser
Попробуйте использовать подготовленные операторы и выполнить свой запрос после подготовки. Подробнее здесь http://php.net/manual/en/pdo.prepared-statements.php – Grynets
Что означает «не будет работать»? У вас есть оператор if/then/else - какая из ветвей кода выполняется? – miken32