0
我嘗試在運行Apache 2.4.10和PHP 5.6.4的腳本的Windows Server 2102 R2上使用PDO進行連接,並得到錯誤「Class」PDO '嘗試連接時找不到'。在Windows Server 2012 R2和PHP 5.6.4上找不到PDO
這裏是代碼調用
ini_set('display_errors', 'On');
require_once('c:/path/site_inc.php');
switch($_REQUEST['action']){
case 'getList':
getList();
break;
}
function getList(){
$dbh = dbConnect();
$pstmt = $dbh->prepare("SELECT * FROM announcements WHERE user=? ORDER BY startDate");
$pstmt->execute(array($_COOKIE['appsuname']));
echo json_encode($pstmt->fetchAll(PD0::FETCH_ASSOC));
}
function dbConnect(){
$DBH = new PDO(ccappConfig::mysqlDSN, ccappConfig::mysql_user, ccappConfig::mysql_pword);
return $DBH;
}
我已經測試,以確保PDO的連接可用以下方式
if(class_exists('PDO')){
echo "PDO Installed<br />";
} else {
echo "PDO NOT Installed<br />";
}
phpinfo();
這將返回「PDO安裝」和phpinfo()函數確認pdo_mysql與mysql(正在被淘汰)和mysqli一起安裝。
我不知道爲什麼會產生這個錯誤,並且php_pdo.dll已經從5.3版本中刪除了,所以我不相信我錯過了一個驅動程序,我也不相信這是由於phpinfo()在PDO標題下返回mysql和sqlite驅動程序都被啓用。
我在這裏丟失了什麼,或者我的代碼丟失了嗎?
嘗試在Stac上搜索k溢出一些問題,如http://stackoverflow.com/questions/7086859/pdo-drivers-no-value-in-windows – floor 2015-02-23 22:11:08
因爲這是指「沒有驅動程序」我有驅動程序,他們正在按我的問題解釋運行。 – aallord 2015-02-23 22:14:00
對不起,我錯過了最後的部分。我不太瞭解Windows服務器配置,但你有沒有遵循這些指示http://php.net/manual/en/pdo.installation.php?你可能錯過了PDO的特定數據庫選項的部分 - > http://php.net/manual/en/pdo.drivers.php – floor 2015-02-23 22:18:31