Соединение с Php Oracle: oci_connect (): ORA-24315: ошибка типа незаконного атрибута

Я пытаюсь подключиться к базе данных Oracle, используя php в Windows.

$db = "BLM = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = host)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = blm) ) )"; $conn = oci_connect('blmuser', 'blmuser', $db); if (!$conn) { $e = oci_error(); trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR); } 

Я получаю сообщение об ошибке oci_connect(): ORA-24315: illegal attribute type

Я попробовал установить клиентский путь, но безрезультатно.

phpinfo () введите описание изображения здесь

Решила проблему. Я пытался использовать php_oci8_11g.dll только в php.ini. Включено расширение php_oci8.dll, и все работает нормально.

Просто удалите BLM= поскольку вам нужно дать описание только как идентификатор соединения. Первый необходим, если вы хотите tnsnames.ora псевдоним (BLM), как в tnsnames.ora вместо полного описания.

 $db = "(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = host)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = blm) ) )";