无法在PDO中连接到mysql数据库,在端口8080上使用apache和easyPHP

时间:2013-09-26 15:51:49

标签: php mysql apache pdo

我在我的localhost:8080上使用EasyPHP,在我的localhost:80上使用IIS7.5。 像魅力一样工作。

我可以在这个地址访问phpmyadmin没问题:

http://127.0.0.1:8080/modules/phpmyadminXXXXXXXXXXXXX/

使用root而无密码。


我的问题是,为什么我的连接根本不起作用。没有回应,没有错误信息,没有。页面继续加载... 有我的代码:

<?php
$db_server              = '127.0.0.1:8080';                 // DB Server Address
$db_user                = 'root';                   // DB Username
$db_pass                = '';                   // DB Password
$db_database            = 'my_dbnameXXXX';              // Database Name
try{
    $dbh = new PDO('mysql:host='.$db_server.'; dbname='.$db_database,$db_user, $db_pass);
    $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $dbh->setAttribute(PDO::ATTR_TIMEOUT,3600);
}
catch(PDOException $e){
    echo $e->getMessage();
}

?>

是的,我尝试使用localhost:8080,也不起作用......

有人可以帮助我吗?谢谢。我会留下来回应评论或问题。

2 个答案:

答案 0 :(得分:3)

MySQL通常侦听端口3306,而不是8080,这是您的网络服务器正在侦听的端口。

答案 1 :(得分:0)

您应该分别指定host=port=。我不认为PDO支持你在那里使用的冒号式符号。

另请注意,MySQL默认为端口3306,但8080适用于您的Web服务器。尽量不要混淆两者。