Tôi có một tập lệnh PHP mà tôi sử dụng để kết nối với cơ sở dữ liệu MySQL. Kết nối thông qua mysql_connect hoạt động hoàn hảo, nhưng khi cố gắng với PDO tôi nhận được lỗi sau:Không thể kết nối với máy chủ MySQL bằng PDO
SQLSTATE[HY000] [2005] Unknown MySQL server host 'hostname' (3)
mã tôi sử dụng để kết nối là dưới đây:
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
$hostname_localhost ="hostname";
$database_localhost ="dbname";
$username_localhost ="user";
$password_localhost ="pass";
$user = $_GET['user'];
$pass = $_GET['pass'];
try{
$dbh = new PDO("mysql:host=$hostname_localhost;dbname=$database_localhost",$username_localhost,$password_localhost);
echo 'Connected to DB';
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $dbh->prepare("SELECT check_user_company(:user,:pass)");
$stmt = $dbh->bindParam(':user',$user,PDO::PARAM_STR, 16);
$stmt = $dbh->bindParam(':pass',$pass,PDO::PARAM_STR, 32);
$stmt->execute();
$result = $stmt->fetchAll();
foreach($result as $row)
{
echo $row['company_id'].'<br />';
}
$dbh = null;
}
catch(PDOException $e)
{
echo $e->getMessage();
}
?>
Cảm ơn trước
Lỗi này đủ rõ ràng ... tên máy chủ được chỉ định không thể được giải quyết thành địa chỉ IP. –
Trường hợp nó nói "tên máy chủ", bạn phải điền vào * tên máy chủ hoặc địa chỉ IP của máy chủ * mySQL của bạn. –
Tôi quên đề cập đến, tôi đang sử dụng địa chỉ IP (và địa chỉ IP đó cũng là lỗi) nhưng tôi đã thay đổi các giá trị có mục đích vì lý do bảo mật – user1337210