#php #oracle #oracle12c #execute #oci8
#php #Oracle #oracle12c #выполнить #oci8
Вопрос:
Начал использовать функции oci_ в PHP. Сталкиваюсь с ошибкой subject.
Мой файл базы данных выглядит следующим образом:
<?php
$conn = oci_connect("user", "pass", "LOSINGMINDHOST");
if (!$conn) {
$e = oci_error();
error_log(trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR));
}
oci_close($conn);
?>
Подтвердил, что приведенная выше строка подключения выполнена успешно.
Теперь в моем тестовом файле у меня есть следующее:
<?php
include("include/database.php");
$queryMain = oci_parse($conn, "select * from sometable");
oci_execute($queryMain);
?>
Используя вышесказанное, вот что я получаю на экране:
Warning: oci_parse(): supplied resource is not a valid oci8 connection resource in D:htdocsmysitetest.php on line 4
Warning: oci_execute() expects parameter 1 to be resource, bool given in D:htdocsmysitetest.php on line 26
Я использую PHP 7.4 на Windows Server 2019.
Я проверил файл php.ini, чтобы убедиться, что соединения oci8 доступны и / или раскомментированы.
Что еще мне нужно, чтобы это работало?
Ответ №1:
Сразу после открытия соединения вы снова закрываете его. Это делает его непригодным для использования. Удалите oci_close($conn);
вызов.
В целом, вы можете захотеть взглянуть на другую архитектуру, например, с использованием классов.