У меня проблемы с устранением неполадок в простом PHP-коде для вставки записи в таблицу MySQL.
Этот код, введенный непосредственно в WAMP, работает нормально:
INSERT INTO `users` (`userName`,`userEmail`) VALUES ('orange','orange@gmail.com')
Этот код PHP не работает:
<?php
$dbHost="localhost";
$dbName="project";
$dbUser="admin";
$dbPassword="abcd";
$dbh=new PDO("mysql:host=$dbHost;dbName=$dbName", $dbUser, $dbPassword);
print_r($dbh);
echo "</br>";
print_r($dbh->errorInfo());
$query=$dbh->prepare("INSERT INTO users (userName, userEmail) VALUES (?,?)");
echo "</br>";
print_r(var_dump($query->errorInfo()));
echo "</br>";
print_r($query->errorCode());
echo "</br>";
print_r($dbh->errorInfo());
$query->bindValue(1, 'apple');
echo "</br>";
print_r(var_dump($query->errorInfo()));
echo "</br>";
print_r($query->errorCode());
echo "</br>";
print_r($dbh->errorInfo());
$query->bindValue(2, 'apple@gmail.com');
echo "</br>";
print_r(var_dump($query->errorInfo()));
echo "</br>";
print_r($query->errorCode());
echo "</br>";
print_r($dbh->errorInfo());
$inserted=$query->execute(); //True if succesful, False if not.
echo "</br>";
print_r(var_dump($query->errorInfo()));
echo "</br>";
print_r($query->errorCode());
echo "</br>";
print_r($dbh->errorInfo());
echo "</br>";
if ($inserted){print_r("true");}else{print_r("false");};
?>
Когда я запускаю страницу, я получаю следующую распечатку:
PDO Object ( )
Array ( [0] => [1] => [2] => )
array(3) { [0]=> string(0) "" [1]=> NULL [2]=> NULL }
Array ( [0] => 00000 [1] => [2] => )
array(3) { [0]=> string(0) "" [1]=> NULL [2]=> NULL }
Array ( [0] => 00000 [1] => [2] => )
array(3) { [0]=> string(0) "" [1]=> NULL [2]=> NULL }
Array ( [0] => 00000 [1] => [2] => )
array(3) { [0]=> string(5) "3D000" [1]=> int(1046) [2]=> string(20) "No database selected" }
3D000
Array ( [0] => 00000 [1] => [2] => )
false
Запись не вставлена в БД. Что я делаю не так? Я не уверен, что я должен увидеть в print_r, я предоставляю их в качестве помощи для ответчиков.
Спасибо,
JDelage
отредактировано - я добавил print_r, рекомендованный в комментариях.
Вот что я вижу в WAMP:
http://jdelage.public.s3.amazonaws.com/project_sch.jpg