PHP Oracle: oci_connect не показывает ошибку

Ошибка в oci_connect линия. Но моя проблема в том, что ошибка не отображается на странице. Даже если я положу $e = oci_error(); это больше не будет выполнено, чтобы показать ошибку. Я попытался попробовать / поймать, но это тоже не сработало.

Когда я изменяю детали подключения для подключения к другой базе данных, это работает. Детали подключения, которые я использую, работают в SQL Developer.

$db='(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = '. $GLOBALS['HOST']. ')(PORT = '. $GLOBALS['PORT'] .'))
)
(CONNECT_DATA =
(SID = '. $GLOBALS['SID'] . ')
)
)';
echo '<br>USERNAME: *'. $GLOBALS['USERNAME'] .'*';
echo '<br>PASSWORD: *'. $GLOBALS['PASSWORD'] .'*';
echo '<br>2 db: *'. $db .'*';
$conn = oci_connect($GLOBALS['USERNAME'], $GLOBALS['PASSWORD'], "$db");
echo 'success';
die;

0

Решение

После попытки изменить настройку файла PHP.ini, чтобы показать все ошибки, на самом деле не было ошибок, затем я обновил версию Oracle Instant Client.

Сначала я проверяю, какую версию Oracle я использую:

select * from v$version
where banner like 'Oracle%';

Выход:

Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

После этого я скачал новую версию Oracle Instant Client версии 11.2.0.3.0 и установил ее на PATH и перезапустил сервер. Тогда это сработало!

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]