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

Форум MySQL

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

 

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

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

тема: Запросы из PHP 5.0 не доходят до БД MySQL 4.0. Как проверить?
 
 автор: Evgen   (20.03.2006 в 15:13)   письмо автору
 
 

Как проверить работоспособность PHP+MySQL?
WinXP + Apache 2.0.54 + PHP 5.0.5 + MySQL 4.0.26-nt, чистая база, пользователь - root, пароля и привелегий - нет.
Служба MySQL запущена.
Сценарии PHP выполняются, mysql из командной строки работает.
Нужно ли подключать в php.ini библиотеку php-mysql.dll, или нет? Если нужно, то где ее взять (такого файла на компе поиск не обнаружил)?

Извините за такие несерьезные вопросы - первые шаги...
Буду признателен за помощь!

P.S. "... не доходят..." - это значит, что при запуске нижеприведенного сценария, в IE ничего не отображается - чистый лист, кроме <title>.



<html>
<head>
<title>Запрос к БД тест</title>
</head>
<body>
<?php
// Имя сервера базы данных, например $dblocation = "mysql28.noweb.ru"
// сейчас выставлен сервер локальной машины
$dblocation = "localhost";
// Имя базы данных
$dbname = "test";
// Имя пользователя... Скорее всего будет совпадать с вашим доменным именем
// у нас, например $dbuser = "softtime";
$dbuser = "root";
//$dbuser = "evgen";
// Пароль - в комментариях не нуждается ;-)
$dbpasswd = "";
// Соединяемся с сервером базы данных
$dbcnx = @mysql_connect($dblocation,$dbuser,$dbpasswd);
if (!$dbcnx) {
echo( "<P>В настоящий момент сервер базы данных не
доступен, поэтому корректное отображение
страницы невозможно.</P>" );
exit();
}
// Выбираем базу данных
if (! @mysql_select_db($dbname,$dbcnx) ) {
echo( "<P>В настоящий момент база данных не доступна,
поэтому корректное отображение страницы
невозможно.</P>" );
exit();
}
// Формируем и выполняем SQL-запрос для посетителя с
// именем $_POST['name']
//$query = "SELECT password FROM users WHERE name='".$_POST['name']."'";
$query = "SELECT password FROM customers WHERE name='".$_POST['name']."'";
$nme = mysql_query($query);
if(!$nme)
{
echo "Ошибка выполнения запроса";
exit();
}
// Если запрос вернул результат - производим дальнейшую обработку
if(mysql_num_rows($nme) > 0)
{
// Получаем пароль
$password = mysql_result($nme,0);
// Сравниваем пароль из базы данных и введённый посетителем
if ($_POST['password'] == $password) echo "Привет, $name !";
else
{
echo "Ошибка идентификации: неправильный пароль";
exit();
}
}
// Если в результате запроса не получено ни одной
// строки - посетитель с таким именем не зарегистрирован
else
{
echo "Ошибка идентификации: посетитель не зарегистрирован";
exit();
}
?>
</body>
</html>

   
 
 автор: Trianon   (20.03.2006 в 15:27)   письмо автору
 
   для: Evgen   (20.03.2006 в 15:13)
 

>P.S. "... не доходят..." - это значит, что при запуске
>нижеприведенного сценария, в IE ничего не отображается -
>чистый лист, кроме &lt;title>.

А сам PHP работает?
Больше похоже на то, что не настроен apache для обработки PHP-кода.

Вот такой скрипт что-нибудь выдает?
<?php 
  phpinfo
();
?> 

И есть ли там что-нибудь про MySQL?

   
 
 автор: Evgen   (20.03.2006 в 16:05)   письмо автору
 
   для: Trianon   (20.03.2006 в 15:27)
 

Да, php+Apache работает, phpinfo выводит полагающуюся картинку с информацией. И другие скрипты, на которые ссылаются html тоже работают.

Про mysql в phpinfo я ничего не нашел. А в каком разделе оно должно было быть?

P.S. Из какой програмки можно вытаскивать такие красивые картинки со скриптами? Я поставил svoi.net PHP Edit 5.0 - не подскажите, есть у нее такая прелесть? И как ЭТО вставлять в сообщение (на форуме)?

Спасибо!

   
 
 автор: Trianon   (20.03.2006 в 16:27)   письмо автору
 
   для: Evgen   (20.03.2006 в 16:05)
 

При перечислении модулей PHP должен был написать что-то вроде
                   mysql
MySQL Support               enabled 
Active Persistent Links      0  
Active Links                 0  
Client API version           4.1.7  

PS. Надо просто выделить мышкой нужный кусок текста и нажать на тэг выделения кода - справа над полем ввода сообщения.

Если PHP работает, то крайне странно, что выдается ПУСТАЯ страница.
А смотреть её сгенерированный HTML-код пробовали? (Меню/Вид/В виде HTML)

   
 
 автор: Evgen   (20.03.2006 в 17:15)   письмо автору
 
   для: Trianon   (20.03.2006 в 16:27)
 

"При перечислении модулей PHP..." - это имеется ввиду phpinfo? Если да и я правильно понимаю, модуль MySQL должен был идти в ряду с libxml, odbc, ftp и т.п.? Если так, то информация о модуле MySQL в phpinfo мною не обнаружена!

html-код пустой страницы - раздел head - на месте,
раздел body - только открывающий тэг,
дальше - ничего.

P.S. Спасибо за подсказку !

   
 
 автор: Trianon   (20.03.2006 в 17:31)   письмо автору
 
   для: Evgen   (20.03.2006 в 17:15)
 

Именно так. У меня, например, он идет сразу за libxml

В первой таблице phpinfo показывает путь к актуальному файлу конфигурации php.ini

Найдите его и выясните, включена ли там поддержка модуля mysql.
Параметр extension_dir=... и параметр extension=php_mysql.dll

Файл php_mysql.dll в папке , путь к которой задан в extension_dir

Файл libmysql.dll должен лежать там же, где и php.ini
Можно еще глянуть в эту [url=?id_forum=5&id_theme=14225 ]ветвь[/url].

   
 
 автор: Evgen   (20.03.2006 в 18:30)   письмо автору
 
   для: Trianon   (20.03.2006 в 17:31)
 

Большое спасибо за оперативную и результативную помощь!

Причина была действительно в том, что в РНР не был подключен модуль mysql. Я пробовал раньше в php.ini открывать ссылку на модуль php_mysql.dll, но винда ругалась при загрузке, что не находит его.
А он оказался спрятанным в .../PHP/EXT/ !
После его копировании в WINDOWS и перезагрузке, информация о модуле MySQL появилась в phpinfo и PHP+MySQL заработал!

Еще раз спасибо!

   
Rambler's Top100
вверх

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