Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   PHP 5.2.4: не работает механизм доступа к Oracle через ODBC??? (http://forum.oszone.net/showthread.php?t=130985)

BacuJIuu KypraHoB 05-02-2009 07:45 1029884

PHP 5.2.4: не работает механизм доступа к Oracle через ODBC???
 
Есть PHP скрипты. Прекрасно работали через ODBC с оракулом на PHP 4.4.7(9). Системщики обновили сервер, поставили туда PHP 5.2.4. Поставили корректно. Эти скрипты перестали работать. Почему???

mar 05-02-2009 14:58 1030306

пока телепаты спешат на помощь :), попробуйте получить строки ошибок и посмотреть, какие именно функции в коде рабортают некорректно. Тогда можно будет попробовать понять, в чем дело.

BacuJIuu KypraHoB 05-02-2009 17:15 1030475

Верно. Вот скрипт. Тут и ломаться-то нечему:

<?php
$con = odbc_connect("M_ALIAS", "USER", "PASS");
if ($con == 0) exit("ОШИБКА: Не могу подключиться к СУБД!");
$sql = "SELECT sysdate FROM dual"; # По-настоящему здесь огромный запрос
$res = odbc_exec($con, $sql);
odbc_result_all($res, "BORDER=1 CELLPADDING=2 CELLSPACING=0");
?>

M_ALIAS - имя источника данных, натравленного на "Драйвер Microsoft ODBC для Oracle". Тут мгновенно выдаётся такое:

Warning: odbc_connect() [function.odbc-connect]: SQL error: [Microsoft][Диспетчер драйверов ODBC] Ошибка SQLAllocHandle для драйвера в SQL_HANDLE_ENV, SQL state IM004 in SQLConnect in D:\wwwdocs\Technolog\zhd.php on line 2
ОШИБКА: Не могу подключиться к СУБД!

Если поставить вместо M_ALIAS - O_ALIAS - имя источника данных, натравленного на "Oracle ODBC driver", то всё вообще виснет намертво и через 5 мин выдаётся сообщение, что страница не может быть отображена.

Неделю назад на PHP 4.4.9 всё летало в обоих вариантах.

Ещё. Оба эти алиаса на сервере проверил лично через оракловую утиль "Oracle ODBC Test". Оба рабочие.

Igor_I 05-02-2009 20:41 1030701

А просто тупо сравнить 2 php-ini, новый и старый? Если старого нет, то напомните системщикам про законы Мерфи. :)

BacuJIuu KypraHoB 05-02-2009 21:57 1030761

Igor_I, Нет "нового" php.ini. Он же и есть "старый".

Sham 06-02-2009 14:06 1031269

http://ru.php.net/manual/ru/odbc.installation.php
проверьте наличие требуемых компонентов, и необходимость их апдейта/даундейта...

BacuJIuu KypraHoB 06-02-2009 14:39 1031294

Sham, У нас сервер под Windows 2003. Соответственно PHP всё на борту несёт.

Sham 06-02-2009 15:00 1031314

мб несовместимость встроенного ODBC с API оракла или драйвером... попробуйте откатиться до PHP4

BacuJIuu KypraHoB 06-02-2009 15:20 1031336

Цитата:

Цитата Sham
попробуйте откатиться до PHP4 »

Шиш... Там руководят те, кто хочет быть на передовом острие. Собственно через библиотеки OCI всё работает. Обидно, что это испортилось. Переписывать придётся. Вот эта штука-то удобная - odbc_result_all().

Igor_I 06-02-2009 19:51 1031564

Логи веб-сервера посмотреть?

BacuJIuu KypraHoB 09-02-2009 07:45 1033292

Igor_I, попробую... Кислое это дело, идти к системщикам, просить... Речи эти слушать: "У нас всё в порядке. Это скрипты ваши кривые...".

Igor_I 10-02-2009 14:28 1034489

BacuJIuu KypraHoB, на мой взгляд, попытка починить скрипт только глядя в браузер, либо исходники скрипта - неправильна. Мало-ли что они могла там накрутить.


Время: 00:05.

Время: 00:05.
© OSzone.net 2001-