У меня проблема, чтобы получить скрипт PHP, подключающийся к базе данных Informix. Я решил установить версию сообщества Zend-сервера и, кроме того, расширение pdo_informix. Когда я запускаю администратор Zend-сервера в браузере, я вижу расширение pdo_informix, обозначенное как «зеленый». Впоследствии я установил Informix ClientSDK 3.70 на Ubuntu. Я установил переменную среды $ INFORMIXDIR в/etc/profile и в переменную PATH в каталог bin. Установочный каталог был/opt/IBM/informix. Когда я теперь пытаюсь написать код в PHP, какUbuntu 10.04 zend-server и информационное соединение
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/>";
}
Я получил следующее сообщение об ошибке в браузере:
Failed: SQLSTATE=HY000, SQLDriverConnect: -23101 [Informix]
[Informix ODBC Driver][Informix]Unspecified System Error = -23101.
Если я пытаюсь соединиться с Studio Server на Ubuntu к Informix DB работает хорошо, но я думаю, что они используют драйвер JDBC.
Если я перехожу в каталог bin моего клиента Informix clientsdk, есть приложение под названием finderr. Если я делаю finderr -23101 я получаю следующий результат:
./finderr -23101
-23101 Unable to load locale categories.
Так я думал, что я должен установить DB_LOCALE, переменные окружения CLIENT_LOCALE ... мой сервер использует en_us.819 и мой клиент использует en_us .utf8.
+1 к INFORMIXDIR не установлен. Это было сожжено этой самой проблемой, когда Apache отсутствовал в среде Informix. –