我无法使用PDO访问我的MySQL数据库。我在浏览器中收到以下错误:
未知数据库
观察此PHP代码;请注意将$port
插入到$dsn
变量中。在我的情况下,MySQL的默认端口为3306,实际上,它已配置为侦听系统上的端口3308。
我使用Wamp托管我的应用程序。很容易找到MySQL侦听的端口:
代码:
<?php
$host = 'localhost';
$db = 'my_database';
$port = 3308;
$user = 'root';
$pass = '';
$charset = 'utf8mb4';
$dsn = "mysql:host=$host;port=$port;dbname=$db;charset=$charset";
$options = [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
];
try
{
// create PDO object
$pdo = new PDO($dsn, $user, $pass, $options);
// build select query
$statement = $pdo->query( 'SELECT * FROM `users`' );
// do things with the queried data
while(($row = $statement->fetch()) !== false )
{
print_r($row);
print("<br>");
}
}
catch (PDOException $e)
{
var_dump($e);
}