日期:2014-05-17  浏览次数:20549 次

关于dsn的问题
最近在codeigniter中使用dsn进行数据库连接,但是不管端口号改成什么总是能够连接成功,而修改用户名,密码或ip地址的话就会出现连接失败的问题,下面是我的代码
PHP code
    function get_remote_dblist($ip, $port, $user, $pwd) {
        $dsn = "mysql://$user:$pwd@$ip:$port";
        $newDB = $this->load->database ( $dsn , TRUE );
return $newDB->version();
}

烦请各位前辈指点下

------解决方案--------------------
CI的官方文档中并未提及DSN中主机名可以附加端口号。有一个折衷的方法你可以试试
PHP code
$dsn = "mysql://{$user}:{$pwd}@{$ip}/?port={$port}";