Mam skrypt PHP, którego używam do łączenia się z bazą danych MySQL. Połączenie przez mysql_connect działa perfekcyjnie, ale gdy próbuje z PDO pojawia się następujący błąd:Nie można połączyć się z serwerem MySQL przy użyciu PDO
SQLSTATE[HY000] [2005] Unknown MySQL server host 'hostname' (3)
kod używać do łączenia się poniżej:
<?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();
}
?>
góry dzięki
Błąd jest wystarczająco oczywisty ... podana nazwa hosta nie może zostać przetłumaczona na adres IP. –
Tam, gdzie jest napisane "nazwa hosta", musisz wpisać * swoją * nazwę hosta lub adres IP swojego serwera mySQL. –
Zapomniałem wspomnieć, używam adresów IP (i ten adres IP również występuje w błędzie), ale zmieniłem wartości celowo ze względów bezpieczeństwa – user1337210