Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Не загружается внешняя библиотека php_mysql.dll
 
 автор: Романыч   (26.10.2004 в 11:17)   письмо автору
 
 

Здравствуйте уважаемые. Подобный вопрос уже обсуждался здесь, я прошу прощения, что подымаю его сново, но всеже хотелось бы выяснить причины сабжевой проблемы. Пытаюсь установить связку apache 2.0.49 + php 5.0.2 + mysql 5.0.0a. Откоментировал строчку:
extension=php_mysql.dll

Делаю рестарт apache, выдается сообщение:
PHP Startup: Unable to load dynamic library 'C:\Program Files\php\ext\php_mysql.dll' - Не найдена указанная процедура
Вот, что говорит apache в своем error.log:
PHP Warning:  PHP Startup: Unable to load dynamic library 'C:\\Program Files\\php\\ext\\php_mysql.dll' - \xcd\xe5 \xed\xe0\xe9\xe4\xe5\xed\xe0 \xf3\xea\xe0\xe7\xe0\xed\xed\xe0\xff \xef\xf0\xee\xf6\xe5\xe4\xf3\xf0\xe0.\r\n in Unknown on line 0

Где копать?

   
 
 автор: cheops   (26.10.2004 в 13:27)   письмо автору
 
   для: Романыч   (26.10.2004 в 11:17)
 

Поробуйте скопировать библиотеку в C:\Program Files\php\ или в С:\Windows\Systems32\
а директиву extension_dir оставить без изменений
extension_dir = "./"


http://www.softtime.ru/info/articlephp.php?id_article=24

   
 
 автор: Романыч   (26.10.2004 в 15:24)   письмо автору
 
   для: cheops   (26.10.2004 в 13:27)
 

Заменил дерективу:
extension_dir = "C:\Program Files\php\ext"

на
extension_dir = "./"

скопировал библиотеки в С:\Windows\Systems32\, делаю рестарт apache - результат тотже, только теперь выдается сообщение:
PHP Startup: Unable to load dynamic library './php_mysql.dll' - не найдена указанная процедура

Такое впечатление, что в коде самой php_mysql.dll есть обращение к некой процедуре, которую библиотека не может найти. Мне кажется, надо глубже копать, дело не в дерективе extension_dir.

   
 
 автор: cheops   (26.10.2004 в 20:36)   письмо автору
 
   для: Романыч   (26.10.2004 в 15:24)
 

Хм... а операционная система какая?

   
 
 автор: тПНБОЩЮ   (27.10.2004 в 10:07)
 
   для: cheops   (26.10.2004 в 20:36)
 

пРЕТБГЙПООБС УЙУФЕНБ XP Profesional

   
 
 автор: Романыч   (27.10.2004 в 10:18)   письмо автору
 
   для: cheops   (26.10.2004 в 20:36)
 

Операционная система Windows XP Professional

   
 
 автор: glsv (Дизайнер)   (26.10.2004 в 20:46)   письмо автору
 
   для: Романыч   (26.10.2004 в 15:24)
 

А библиотека php_mysql.dll из дистрибутива PHP - или вы отдельно ее закачивали?

   
 
 автор: Романыч   (27.10.2004 в 10:23)   письмо автору
 
   для: glsv (Дизайнер)   (26.10.2004 в 20:46)
 

Библиотека php_mysql.dll из дистрибутива PHP. Может проблема с MySQL?

   
 
 автор: cheops   (27.10.2004 в 10:39)   письмо автору
 
   для: Романыч   (27.10.2004 в 10:23)
 

Нет, работоспособность сервера MySQL пока не загружено расширение не влияет...
Хм... может попробовать поставить PHP вместо C:\Program Files\php\ в С:\php? Я сейчас в свою очередь попробую поставить его в C:\Program Files\ - о результатах отпишусь.

   
 
 автор: cheops   (27.10.2004 в 10:48)   письмо автору
 
   для: Романыч   (27.10.2004 в 10:23)
 

>Может проблема с MySQL?
Хотя, в принципе php_mysql.dll может использовать библиотеки MySQL... Попробуйте не 5 версию, а 4.0.21.

PS Попробовал перекинуть PHP в С:\Program Files - всё работает.

   
 
 автор: Романыч   (27.10.2004 в 11:07)   письмо автору
 
   для: cheops   (27.10.2004 в 10:48)
 

В папке c:\mysql\bin\ несколько демонов mysqld,mysqld-max,mysqld-max-nt,mysql-nt,mysql-opt, который из них необходимо подгружать? Я подгружаю mysqld-nt.

   
 
 автор: Романыч   (27.10.2004 в 11:37)   письмо автору
 
   для: Романыч   (27.10.2004 в 11:07)
 

Проблему решил... В папке C:\WINDOWS\system32\ заменил библиотеку libmysql.dll (200704 byte) на библиотеку libmysql.dll (233472 byte) из пакета php, делаю рестарт apache, сообщение не появляется, далее создаю index.php:

<?php
  phpinfo
()
?>

нахожу строчку MySQL Support enabled - следовательно все ОК!

   
 
 автор: Kunst Master   (21.02.2006 в 08:48)
 
   для: Романыч   (26.10.2004 в 11:17)
 

Здесь суть проблемы кроется в том, что в настройках Apache (по умолчанию файл httpd.conf) не прописан путь к PHP... Там должно быть что-то вроде PHPIniDir "d:\server\php\" , причем обязательно с последним слешем...

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования