0

它一直对我有用,但这次不是。

连接.ini

conn = "mysql:host=localhost; dbname=%dbname%"
user = "root"
pass = "%passwd%"
conn1 = "mysql:host=%myRealHostAddr%; dbname=%dbname%"
user1 = "%user%"
pass1 = "%passwd%"

pdo

class prepeared {
    const LOG = "lock/loginsStat.log";
    private $_db;
    private $dbc;

    function __construct(){
        $this->dbc = parse_ini_file($_SERVER["DOCUMENT_ROOT"]."/hours/lock/conect.ini");
        try{
            $this->_db = new PDO($this->dbc["conn"], $this->dbc["user"], $this->dbc["pass"]);
        }catch(PDOException $e){
            echo $e->getMessage();
        }
    }

等等...... Vars %var% 是真实值,只是为这篇文章更改了它们。带有 1 的变量在主机上工作得很好(没有 1,它只是为了本地测试而添加的)。当我将它带到本地机器进行一些测试时,我添加了这个 1 来禁用它们并为本地设置创建一个新的变量。

我现在看到的错误是

无效的数据源名称

任何想法为什么?我知道这个配置在我几周前使用它时工作得很好,所以我怀疑这里没有错误。大概是我错了...

4

1 回答 1

0
  1. 摆脱catch(PDOException $e){ echo $e->getMessage();}东西以获得完整且有用的错误消息,而不是您目前拥有的存根。
  2. var_dump($this->dbc);也有很大帮助。
于 2013-06-07T10:04:28.390 回答