更新1:@Fred -ii-谢谢!这通过重新启动这些服务解决了这个问题。
我现在在Neatbeans中运行时遇到的下一个问题
Uncaught exception 'PDOException' with message 'SQLSTATE[IM002] SQLDriverConnect: 0 [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
我知道Access不是首选方法,但对于项目来说这是因为工具不在我手中。
澄清我在Windows 7 x64上运行它。
这就是我正在制作的 -
一个php登录,它将查看用户是否已存在于数据库中,如果不存在,则会添加它们。为简单起见,我们不关心其他人是否已拥有此用户名。
我没有PHP经验,所以在最终获得XAMMP和所有其他必需的东西设置为通过Neatbeans运行PHP后,我遇到了一个涉及PDO的新问题,并了解它是如何工作的。
<?php
echo '<pre>';
print_r(PDO::getAvailableDrivers());
if(isset($_REQUEST['attempt']))
{
$user = $_POST['user'];
$password = $_POST['password'];
}
//Path to our database
$database_path = "./Users.accdb";
if(!file_exists($database_path))
{
die("Acess database file not found!");
}
$conn = new PDO("odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=".$database_path.";Uid=; Pwd=;");
?>
<form method="post" action="index.php?attempt">
User <input type="text" name="user" /><br />
Pass <input type="password" name="password"><br />
<input type="submit" />
</form>
一切正常,直到我必须实际打开与数据库的连接。这是我在Netbeans中运行时遇到的错误。
"Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in C:\xampp\htdocs\Php_Login\index.php:22"
这是我可用的驱动程序的输出。
[0] => mysql
[1] => sqlite
我错过了什么吗?我已阅读了这么多页面,但仍然无法理解为什么我没有这个所需的驱动程序。我不是要求任何人为我做我的项目,只是对我目前的障碍有所了解。
提前致谢。
答案 0 :(得分:0)
确保系统已设置odbc。
您可以将this link视为指南。
您还应该结帐this stackoverflow post
编辑:
您还需要确保在更改系统文件后重新启动所有服务。这些更改在您执行之前不会生效。
编辑:
还要确保使用文件的绝对路径