phpinfo
_ENV["ORACLE_HOME"] C:\oracle\instantclient_11_2\ _ENV["OS"] Windows_NT _ENV["Path"] C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\oracle\instantclient_11_2;\;
oci8
OCI8 Support enabled Version 1.2.5 Revision $Revision: 1.269.2.16.2.43 $ Active Persistent Connections 0 Active Connections 0 Temporary Lob support enabled Collections support enabled
PHP-код
<?php $conn = OCILogon('mppd1','mppd1', "121.256.476.86:1521/mydatabase"); $query = 'select * from users'; $stid = OCIParse($conn, $query); //OCIExecute($stid, OCI_DEFAULT); while ($succ = OCIFetchInto($stid, $row)) { foreach ($row as $item) { echo $item." "; } echo "<br>\n"; } OCILogoff($conn); ?>
я получаю эту ошибку
Severity: Warning Message: ocilogon() [function.ocilogon]: OCIEnvNlsCreate() failed. There is something wrong with your system - please check that PATH includes the directory with Oracle Instant Client libraries
Я решил, что он копирует все содержимое C: \ instantclient_11_2 (проверьте, что у вас) внутри системных и системных папок в Windows, а затем удаляю путь C: \ instantclient_11_2 в переменной окружения PATH.
Я использую XAMPP и Windows 8, и я впервые вижу эту проблему. Я всегда правильно настраивал oci 8 с xampp и окнами через несколько минут. Надеюсь, это поможет вам.
https://forums.oracle.com/forums/message.jspa?messageID=1742926#1745145
На этой странице есть несколько потенциальных решений: от повторной установки xampp до проверки разрешений на использование собственного php oci_connect()
. Вы пробовали что-нибудь из этого?
Вероятно, вы должны скачать InstantClient и заменить содержимое папки / instantclient клиента Oracle на .dll-ы из InstantClient.