|
|
|
| Здрасте 2all.
Я недавно начал изучать PHP и тут же наткнулся на проблему с котрой парюсь уже 2 дня. PHP скрипты работают и работают правильно, пока не попытаешься из этого скрипта подключиться к MySQL серверу (команда @mysql_connect) после этой команды выполнение скрипта останавливается без видимых причин и последствий. Apache+PHP+MySQL настраивал по инструкции взятой с этого сайта. Подскажите что я не доконфигурировал, из-за чего может не работать эта связка? | |
|
|
|
|
|
|
|
для: Глеб
(22.10.2004 в 22:29)
| | Попробуйте убрать @ и посмотреть не вываливается ли чего в браузер. Расширение для работы с MySQL в конфигурационном файле php.ini раскомментировали?
http://www.softtime.ru/info/articlephp.php?id_article=24 | |
|
|
|
|
|
|
|
для: cheops
(22.10.2004 в 22:50)
| | Если убрать @ то в броузере появляется сообщение:
Fatal error: Call to undefined function mysql_connect() in C:\www\academy_site\index.php on line 18
Расширение для работы с MySQL раскомментировано. | |
|
|
|
|
|
|
|
для: Глеб
(23.10.2004 в 00:04)
| | Хм... а версии PHP и Apache какие? При загрузке сервера Apache никаких предупреждений не вываливается о невозможности загрузить модуль? | |
|
|
|
|
|
|
|
для: cheops
(23.10.2004 в 00:16)
| | Apache 2.0.52
PHP 5.0.2
MySQL server 4.0.0 alpha nt
Win2k sp2.
При заграузке Apache никаких прдупреждений не выдается. Насколько я понял в файле конфигурации apache не надо указывать на MySQL, каким либо образом. Да ещё у меня не пошла последняя версия MySQL 4.0.21 (в смысле клиент mysql не выполнял запросы), поэтому поставил эту наугад. Возможно дело в этом? | |
|
|
|
|
|
|
|
для: Глеб
(23.10.2004 в 13:49)
| | Вряд ли дело сейчас в MySQL, в этом случае бы функция mysql_connect() выполнялась бы, но возвращала false... Сообщение
Fatal error: Call to undefined function mysql_connect() in C:\www\academy_site\index.php on line 18
|
говорит о том, что PHP знать ничего не знает о функции mysql_connect(), т.е. расширение для работы с MySQL не пашет :(
Включите, если у вас отключена директива display_startup_errors в php.ini, и посмотрите ничего нового не появится при обращении к скриптам с использованием mysql:
display_startup_errors = On
|
| |
|
|
|
|
|
|
|
для: cheops
(23.10.2004 в 14:01)
| | Включил display_statup_error ничего не изменилось.
после строки
$link=@mysql_connect('localhost:3306', 'root', '') or die('failed');
|
исполнение скрипта заканчивается без каких либо видимых последствий, при чем стоит die в конце или нет значения не имеет.
строка
$link=mysql_connect('localhost:3306', 'root', '') or die('failed');
|
выдает вышеуказанную ошибку. | |
|
|
|
|
|
|
|
для: Глеб
(23.10.2004 в 14:29)
| | Хм... мистика. Выложите пожалуйста конфигурационный файл php.ini, я попробую им свой заменить и посмотреть в чём дело. | |
|
|
|
|
|
|
|
для: cheops
(23.10.2004 в 14:40)
| | Вот файл: | |
|
|
|
|
|
|
|
для: Глеб
(23.10.2004 в 16:36)
| | Проверил в вашей конфигурации с приатаченным постом выше php.ini на WinXP и на Win2000 (правда SP4) - пашет без проблем... Попробуйте снести вообще все: Apache, PHP, MySQL (со всеми конфигами) и поставить по новой. | |
|
|
|
|
|
|
|
для: cheops
(23.10.2004 в 17:17)
| | ЭМОЦИИ И ЧУВСТВА ПЕРЕПОЛНЯЮТ И ВЫПЛЕСКИВАЮТСЯ НАРУЖУ!!!
Я 3 дня трахался (извините за выражение) с проблемой которая решилась за 2 минуты! Просто повторно разархивировал дистрибутив PHP в папку c:\PHP!
Спасибо cheops за терпение, внимание и дельный совет!!!
з.ы. Да сразу задам вопрос чем отличается
$link = mysql_connect("localhost", "root", "") or die('failed');
|
от
$link = @mysql_connect("localhost", "root", "") or die('failed');
|
| |
|
|
|
|
|
|
|
для: Глеб
(23.10.2004 в 17:59)
| | @ - позволяет подавить вывод ошибок и предупреждений PHP-функций - достаточно удобно, так как позволяет даже в случае возникновения ошибки не испортить дизайн сайта, а обработать ошибочную ситуацию самостоятельно, с выводом нужного текста на русском языке в нужном месте. Но в то же время это достаточно опасная штука - так как за ней можно пропустить ошибку.
PS Хорошо, что всё успешно разрешилось, а то у меня советы закончились :))) | |
|
|
|
|
|
|
|
для: cheops
(23.10.2004 в 18:16)
| | ;-) | |
|
|
|