Не удаётся подружить РНР с MySQL
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]
Call to undefined function mysql_connect()
Ну и соответственно номер строки и все такое.
Насколько я понимаю то что тут пишется: Не оприделенная функция mysql_connect().
Угу. И PHP стоит как модуль апача.
Судя по твоим настройкам php_mysql.dll у тебя прописан.
Есть ли какие-нить ошибки, когда запускаешь апачу?
Читать здесь: http://ru.php.net/manual/ru/ref.mysql.php
extension_dir = /usr/local/php5/ext
Выстави правильное значение в php.ini
Выстави правильное значение в php.ini
На данный момент у меня вот что, но это не помогло :mad: :
extension_dir = D:\WebServers\usr\local\php5\ext
Апач не каких ошибок не выдаёт. error.log пустой.
Я думаю что php действительно не знает что такое mysql_connect(); видать ошибка в записи адреса extension_dir= ....
Внизу скрин папки ext
[ATTACH]1959[/ATTACH]
Есть. Лежит в системной папке виесте с php.exe
Блин, в чем же дло :D ...
Я уже не могу. На смех пробивает.
И еще, я не могу понять принцип работы php и мускула, как это php знает где находится мускул. Он че его в реале чтоли отслеживает, когда тот запущен.
Денвер работает нормально.... Но вот блин с этим мускулом или php траблы ((
Да и вообще открой любую статью про WAMP и ставь сначала, не пропуская ни одного шага. Неприлично такие вопросы задавать
Да и вообще открой любую статью про 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
Не тут то было. У меня не че не работает. Я уже перестал грешить на свои руки, так как везде все нормально стоит.
Что то я про libmysql.dll в system32 не слышал. Но на всякий случай перетащил и ребутнул апач. В итоге в УРАААААААААААААААААА ... Все получилось!!!!!
Так че это получается мне теперь при переустановке надо будет добавлять в ..\system32, libmysql.dll ?
круто ... Главное что все работает :rolleyes:
Автору [COLOR="Red"]+ [/COLOR]
мдя, здесь я тебя как раз и спрашивал про это, но ты ответил: "да", а на самом деле "нет".
Файл не обязательно копировать, достаточно прописать путь.
Перейдите в закладку Advanced
Нажмите кнопку 'Environment Variables'
Смотрите в окошко 'System Variables'
Найдите Path (возможно, вам придется сделать прокрутку, чтобы найти его)
Двойной щелчок на Path
Добавьте в конец вашу PHP директорию через ';' (например ;C:\php)
Нажмите OK и перезапустите ваш компьютер
Да он может валяться хоть у черта на куличках. Главное тут что бы: либо в php.ini эти кулички были прописаны как папка с расширениями ext, либо эта dll находилась в системной папке заданой через Path системы. А уж Path можно в виде прописать куда угодно...