我不明白我的问题似乎是什么。我得到以下 PHP 代码:
include_once 'db.inc.php';
try
{
$db = new PDO(DB_INFO, DB_USER, DB_PASS);
}
catch(PDOException $e)
{
echo 'Connection failed: ', $e->getMessage();
exit();
}
$title = htmlentities($_POST['title']);
$entry = htmlentities($_POST['entry']);
$sql = "INSERT INTO entries (title, entry) VALUES (?, ?)";
$stmt = $db->prepare($sql);
$stmt->execute(array($title, $entry));
$stmt->closeCursor();
我没有收到任何类型的错误,并且脚本似乎可以正常工作,但是它没有向数据库中插入任何内容。无论我尝试什么,它都不会做任何事情。
编辑
排序:) 我不知道$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
。
它给了我“未捕获的异常 'PDOException' 和消息'SQLSTATE [3D000]:无效的目录名称:1046 未选择数据库'”。
原来我写mysql:host=127.0.0.1;db_name=test1
而不是mysql:host=127.0.0.1;dbname=test1
在我的配置文件中。
非常感谢您的帮助!