刚刚将database.php文件从MySQL更改为PDO。但我得到了这个错误:
致命错误:对第19行/home/mypath/mydomain.com/library/database.php中的非对象调用成员函数query()
它在做出改变的个人的网站上运行良好。但当上传到我的网站时,它会产生这个错误,不知道为什么。我使用DreamHost。怎么了?
第19行:
$result = $pdo->query($sql);
代码优先级:
<?php
require_once 'config.php';
try {
$conn = new PDO("mysql:host=$servername;dbname=onlysecret_db", $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $e)
{
echo "Connection failed: " . $e->getMessage();
}
function dbQuery($sql)
{
global $pdo;
$result = $pdo->query($sql);
return $result;
}
这是因为您正在访问$pdo
,这是一个不存在的变量。
将$pdo
更改为$conn
:
function dbQuery($sql)
{
global $conn;
$result = $conn->query($sql);
return $result;
}
但我建议不要使用CCD_ 4,而是将CCD_。