Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Не удаётся подружить РНР с MySQL

5.3K
18 июня 2007 года
Bear Deon
82 / / 20.01.2007
Кароче решил я себе поставить АРМ. Начал, конечно, с апача, прочитал литературу по нему, просветился и все такое. Поставил PHP протестил, все работает. Поставил мускул. Решил протестить скрипт, который должен выводится в виде массива, таблици user.
 
Код:
<?php
echo "<pre>";
@mysql_connect("localhost", "root", "root") or die (mysql_error());
@mysql_select_db("mysql") or die ("Не могу подключится к базе данных");
$r=@mysql_query("SELECT * FROM user")or die ("Не могу показать запись");
while($row=mysql_fetch_assoc($r)){
    print_r($row);
    }
?>

В итоге у меня не какой масив на экране не появился ((. Кароче просто пустой экран и все. Даже ошибки не вылетают типа die.
Скрипт рабочий.
Я уже 4-ый день мучаюсь с этим мускулом, ища ответ.

Вот конфигурация:
apache_2.2.4
рнр 5.2.1
mysql-4.1.14


Апач работает, php тоже, а мускул не хочет. Я этот скрипт пробовал установить с запущенным денвером, придворительно отключив свой серв. С денвером все нормально идет. А вот с моей конфой нет.
Если что, то мускул вроде тока с PHP дружить не хочет. Так как он сам по себе висит в процессе, да и MySQL Administator его видит.
В прикреплённом файле лежат конфиги my.ini php.ini httpd.conf
>>> [ATTACH]1958[/ATTACH]
1.8K
18 июня 2007 года
civ3
68 / / 21.07.2003
для начала, убери все @ и поробуй еще раз
5.3K
18 июня 2007 года
Bear Deon
82 / / 20.01.2007
Цитата: civ3
для начала, убери все @ и поробуй еще раз



Call to undefined function mysql_connect()

Ну и соответственно номер строки и все такое.
Насколько я понимаю то что тут пишется: Не оприделенная функция mysql_connect().

1.8K
18 июня 2007 года
civ3
68 / / 21.07.2003
apache под виндой?
5.3K
18 июня 2007 года
Bear Deon
82 / / 20.01.2007
Цитата: civ3
apache под виндой?



Угу. И PHP стоит как модуль апача.

1.8K
18 июня 2007 года
civ3
68 / / 21.07.2003
В PHP5 поддержка MySQL по умолчанию отключена.
Судя по твоим настройкам php_mysql.dll у тебя прописан.
Есть ли какие-нить ошибки, когда запускаешь апачу?

Читать здесь: http://ru.php.net/manual/ru/ref.mysql.php
2.1K
18 июня 2007 года
vectoroc
234 / / 25.07.2006
Call to undefined function mysql_connect() говорит о том что php_mysql.dll не загружен.
Цитата:
; Каталог, в котором хранятся динамически загружаемые расширения.
extension_dir = /usr/local/php5/ext


Выстави правильное значение в php.ini

5.3K
18 июня 2007 года
Bear Deon
82 / / 20.01.2007
Цитата: vectoroc
Call to undefined function mysql_connect() говорит о том что php_mysql.dll не загружен.

Выстави правильное значение в php.ini



На данный момент у меня вот что, но это не помогло :mad: :
extension_dir = D:\WebServers\usr\local\php5\ext


Апач не каких ошибок не выдаёт. error.log пустой.

Я думаю что php действительно не знает что такое mysql_connect(); видать ошибка в записи адреса extension_dir= ....
Внизу скрин папки ext
[ATTACH]1959[/ATTACH]

1.8K
18 июня 2007 года
civ3
68 / / 21.07.2003
а libmysql.dll доступен в системном PATH?
5.3K
18 июня 2007 года
Bear Deon
82 / / 20.01.2007
Цитата: civ3
а libmysql.dll доступен в системном PATH?



Есть. Лежит в системной папке виесте с php.exe
Блин, в чем же дло :D ...

Я уже не могу. На смех пробивает.
И еще, я не могу понять принцип работы php и мускула, как это php знает где находится мускул. Он че его в реале чтоли отслеживает, когда тот запущен.

5.3K
18 июня 2007 года
Bear Deon
82 / / 20.01.2007
еще добавлю, то что у меня ХР SP2.
Денвер работает нормально.... Но вот блин с этим мускулом или php траблы ((
2.1K
18 июня 2007 года
vectoroc
234 / / 25.07.2006
libmysql.dll должен быть в системной папке, потому что пхп грузится как модуль апача, а не cgi (D:\WebServers\usr\local\php5 не похоже на системную папку, или ты отдельно ещё пхп ложил?). Попробуй путь писать с двумя слешами как у тебя сделано в самом низу php.ini
Да и вообще открой любую статью про WAMP и ставь сначала, не пропуская ни одного шага. Неприлично такие вопросы задавать
28K
18 июня 2007 года
AndMan
6 / / 04.06.2007
Посмотри вывод команды phpinfo(). Глянь из какого php.ini php грузит настройки (параметр Configuration File (php.ini) Path) и extension_dir проверь.
5.3K
18 июня 2007 года
Bear Deon
82 / / 20.01.2007
Цитата: vectoroc
libmysql.dll должен быть в системной папке, потому что пхп грузится как модуль апача, а не cgi (D:\WebServers\usr\local\php5 не похоже на системную папку, или ты отдельно ещё пхп ложил?). Попробуй путь писать с двумя слешами как у тебя сделано в самом низу php.ini
Да и вообще открой любую статью про WAMP и ставь сначала, не пропуская ни одного шага. Неприлично такие вопросы задавать



У меня php, apache и mysql лежат в D:\WebServers\usr\local\apache;mysql;php5.
Путь прописал с двумя слешами, перезапустил апач -- не помогло. Писал с одни нормальным слешем "/" тоже не помогло.

папка ext в phpinfo() == D:\WebServers\usr\local\php5\ext
php.ini == D:\WebServers\usr\local\php5\php.ini
"\"(один кривой слеш, как в юниксе) - работает нормально. Отключил в php.ini разрешение коротких тегов (<? ?>), попробовал запустить скрипт без "php" после "<?" в итоге кракозября. Значит php.ini оприделяется нормально. Но вот как проверить папку ext ? Я и не правильный адрес писал, а php не ругается ((

По настройке апача мускула и php я проюзал много статей. Включая статьи в трех своих книгах ))) И не где не описано о данной ошибке.
Везде написано типа а теперь майсикьюэь_коннект() :D И типа все работает :D :D :D

Не тут то было. У меня не че не работает. Я уже перестал грешить на свои руки, так как везде все нормально стоит.

28K
18 июня 2007 года
AndMan
6 / / 04.06.2007
Действительно, если libmysql.dll лежит не в system32 , а в папке php5 , то при запуске apache через >> net start apache ошибка не выдается, но если запускать непосредственно из папки ..\apache\bin как apache.exe , то выдается ошибка о невозможности найти файл libmysql.dll ... после копирования в ..\system32 файла libmysql.dll ошибка исчезает.
5.3K
18 июня 2007 года
Bear Deon
82 / / 20.01.2007
Цитата: AndMan
Действительно, если libmysql.dll лежит не в system32 , а в папке php5 , то при запуске apache через >> net start apache ошибка не выдается, но если запускать непосредственно из папки ..\apache\bin как apache.exe , то выдается ошибка о невозможности найти файл libmysql.dll ... после копирования в ..\system32 файла libmysql.dll ошибка исчезает.



Что то я про libmysql.dll в system32 не слышал. Но на всякий случай перетащил и ребутнул апач. В итоге в УРАААААААААААААААААА ... Все получилось!!!!!
Так че это получается мне теперь при переустановке надо будет добавлять в ..\system32, libmysql.dll ?

круто ... Главное что все работает :rolleyes:
Автору [COLOR="Red"]+ [/COLOR]

1.8K
18 июня 2007 года
civ3
68 / / 21.07.2003
Цитата: civ3
а libmysql.dll доступен в системном PATH?


мдя, здесь я тебя как раз и спрашивал про это, но ты ответил: "да", а на самом деле "нет".

Файл не обязательно копировать, достаточно прописать путь.

Цитата:
Идите в Control Panel и откройте системную иконку (Start -> Settings -> Control Panel -> System, или просто Start -> Control Panel -> System for Windows XP/2003)
Перейдите в закладку Advanced
Нажмите кнопку 'Environment Variables'
Смотрите в окошко 'System Variables'
Найдите Path (возможно, вам придется сделать прокрутку, чтобы найти его)
Двойной щелчок на Path
Добавьте в конец вашу PHP директорию через ';' (например ;C:\php)
Нажмите OK и перезапустите ваш компьютер

12
18 июня 2007 года
alekciy
3.0K / / 13.12.2005
Цитата: Bear Deon
Что то я про libmysql.dll в system32 не слышал.


Да он может валяться хоть у черта на куличках. Главное тут что бы: либо в php.ini эти кулички были прописаны как папка с расширениями ext, либо эта dll находилась в системной папке заданой через Path системы. А уж Path можно в виде прописать куда угодно...

12
18 июня 2007 года
alekciy
3.0K / / 13.12.2005
Во, civ3 все точно изложил.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог