Ben bir PHP komut dosyası bir Informix DB bağlanırken almak için, sorunu var. Ben PDO_INFORMIX uzantısı Zend-sunucu topluluk sürümünü yükleme ve ek olarak düşündüm. Ben tarayıcıda Zend-sunucu admini çalıştırdığınızda, ben PDO_INFORMIX uzantısı "yeşil" olarak işaretlenmiş bakın. Daha sonra Ubuntu Informix ClientSDK 3.70 yükledim. I / etc / profile içine ve bin dizini PATH değişkeninin içine $ INFORMIXDIR ortam değişkeni kurdum. Kurulum dir / opt / IBM / informix oldu. Ben şimdi gibi PHP kod yazmak çalıştığınızda
try{
$db = new PDO("informix:host=xx.xx.com;database=xxx;server=xxx_net; protocol=onsoctcp;", databaseuser, databasepassword);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "test";
}catch (PDOException $e){
echo "<br/>Failed: ". $e->getMessage()."<br/>";
}
Ben tarayıcıda aşağıdaki hata var:
Failed: SQLSTATE=HY000, SQLDriverConnect: -23101 [Informix]
[Informix ODBC Driver][Informix]Unspecified System Error = -23101.
Ben iyi çalışıyor Informix DB Ubuntu Sunucu Studio ile bağlanmaya çalışıyorum, ama onlar JDBC sürücüsü kullanıyorsanız tahmin ederseniz.
Benim Informix clientsdk bin dizininde giderseniz, finderr denilen bir uygulama var. Ben bir finderr yaparsanız -23101 ben şu çıktıyı alıyorum:
./finderr -23101
-23101 Unable to load locale categories.
Yani ben ben ... benim sunucu en_us.819 kullanıyor ve müvekkilim kullanıyor en_us.utf8 DB_LOCALE, CLIENT_LOCALE ortam değişkenlerini ayarlamak zorunda düşündüm.