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

Форум MySQL

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

 

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

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

тема: PHP неможет связаться с MySQL
 
 автор: Mpak   (16.10.2006 в 16:02)   письмо автору
 
 


<?php

$dblaction 
"localhost";
$dbuser "user";
$dbpasswd "";

$dbcnx = @mysql_connect($dblocation,$dbuser,$dbpasswd);

if (!
$dbcnx)
{
echo 
"<p> В настоящий момент меревер базы данных не доступен, поэтому корректное отображение страницы невозможно</p>";
}
else
{
echo 
"Connect!";
}
?>


Он просто оставляет пустой экран...

Но если строку

$dbcnx = @mysql_connect($dblocation,$dbuser,$dbpasswd);

Сделать неактивной, то выдает значение true.

   
 
 автор: Trianon   (16.10.2006 в 17:10)   письмо автору
 
   для: Mpak   (16.10.2006 в 16:02)
 

а зачем Вы поставили @ перед mysql_connect ?

   
 
 автор: Mpak   (17.10.2006 в 21:03)   письмо автору
 
   для: Trianon   (16.10.2006 в 17:10)
 

для подавления вывода сообщений об ошибках...
Считате по этому?

   
 
 автор: Trianon   (17.10.2006 в 21:04)   письмо автору
 
   для: Mpak   (17.10.2006 в 21:03)
 

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

   
 
 автор: cheops   (17.10.2006 в 21:51)   письмо автору
 
   для: Mpak   (17.10.2006 в 21:03)
 

Уберите символ @, что теперь пишет скрипт?

   
 
 автор: Mpak   (17.10.2006 в 22:11)   письмо автору
 
   для: cheops   (17.10.2006 в 21:51)
 

Дословно ошибка:

Fatal error: Call to undefined function mysql_connect() in D:\www\mysql_connect.php on line 6


Как я понял он не может распознать функцию mysql_connect()

   
 
 автор: cheops   (18.10.2006 в 00:44)   письмо автору
 
   для: Mpak   (17.10.2006 в 22:11)
 

Это означает, что у вас не установлено расширение PHP для работы с MySQL, подробнее о том, как настроить его работу можно почитать в статье по ссылке http://www.softtime.ru/article/index.php?id_article=24.

   
 
 автор: Mpak   (18.10.2006 в 13:57)   письмо автору
 
   для: cheops   (18.10.2006 в 00:44)
 

Прочитал, сравнил размеры файлов libmysql.dll - одинаковые, но на всякий случай скопировал из дерикотрии "C: php " в "С: WINDOWS system32" и убрал комментарии в php.ini у всех файлов extension= *.dll , перезагрузил Apache

тоже самое...

P.S. Другие *.php - файлы работают нормально ...

   
 
 автор: spiritos   (19.10.2006 в 13:39)   письмо автору
 
   для: Mpak   (18.10.2006 в 13:57)
 

когда выводите phpinfo(), в таблице где Configuration File (php.ini) Path какой стоит путь?
если с:/windows, то эт не правильно ,значит php не видит ваш "настроенный" инишник.
там должен быть путь c:/php/php.ini (ну или куда у вас установлен php)
Если всё верно, не знаю в чём ошибка, если неверно - в httpd.conf надо добавить строчку
PHPIniDir "C:/php"
,ну например сразу после строчки ServerRoot.
http://www.softtime.ru/article/index.php?id_article=98 помоему тут всё ну очень хорошо описано)

   
 
 автор: Mpak   (19.10.2006 в 14:01)   письмо автору
 
   для: spiritos   (19.10.2006 в 13:39)
 

Теперь вроде как пытается подключиться
(в phpinfo появились таблички mysql)
но выводит ошибку

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'localhost' (using password: NO) in D:\www\mysql_connect.php on line 7


На страничке http://www.softtime.ru/article/index.php?id_article=98 указана похожая ошибка
но там отличие в using password: YES и путь решения убрать пароль, но ко мне это не подходит, т.к. у меня нет пароля...

   
 
 автор: spiritos   (19.10.2006 в 14:07)   письмо автору
 
   для: Mpak   (19.10.2006 в 14:01)
 

Если ваш mysql_connect.php выглядит так как вы привели в начале этой темы, просто поменяйте$dbuser = "user";
на
$dbuser = "root";
...
наверно)

   
 
 автор: Mpak   (19.10.2006 в 14:17)   письмо автору
 
   для: spiritos   (19.10.2006 в 14:07)
 

Тоже самое


Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'localhost' (using password: NO) in D:\www\mysql_connect.php on line 7

   
 
 автор: spiritos   (19.10.2006 в 14:21)   письмо автору
 
   для: Mpak   (19.10.2006 в 14:17)
 

тогда не знаю(
сама только вчера mysql поставила)

   
 
 автор: Mpak   (18.10.2006 в 23:44)   письмо автору
 
   для: cheops   (18.10.2006 в 00:44)
 

Люди добрые, помогите пожалуйста, не могу сдвинуться с места.
Ничего толкового, по решению этой проблемы, в голову не приходит...:(

   
 
 автор: cheops   (19.10.2006 в 12:53)   письмо автору
 
   для: Mpak   (18.10.2006 в 23:44)
 

А у вас какие версии MySQL, Apache и PHP.

   
 
 автор: Mpak   (19.10.2006 в 13:31)   письмо автору
 
   для: cheops   (19.10.2006 в 12:53)
 

php 5.1.3 Apache 2.2.2 MySQL 5.0

   
 
 автор: cheops   (19.10.2006 в 14:25)   письмо автору
 
   для: Mpak   (19.10.2006 в 13:31)
 

Тогда лучше ориентироваться на статьи
http://www.softtime.ru/article/index.php?id_article=98
http://www.softtime.ru/article/index.php?id_article=95

   
 
 автор: Mpak   (19.10.2006 в 15:00)   письмо автору
 
   для: cheops   (19.10.2006 в 14:25)
 

php файлы открываются нормально...
У меня проблема только в том что MySQL не хочет подключаться...
Вроде все сделал так как написано...
Но он все равно выдает ошибку:

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'localhost' (using password: NO) in D:\www\mysql_connect.php on line 7

   
 
 автор: cheops   (19.10.2006 в 17:17)   письмо автору
 
   для: Mpak   (19.10.2006 в 15:00)
 

Ага, это означает, что PHP присоединлся к PHP, но MySQL не принимает логин и пароль. У вас пароль на root не выставлено?

   
 
 автор: Mpak   (19.10.2006 в 20:10)   письмо автору
 
   для: cheops   (19.10.2006 в 17:17)
 

Все, ошибку не выдает...
Но в не может найти базу данных test там где версия прописана....
<?php   
  $dblocation 
"localhost";   
  
$dbname "test";   
  
$dbuser "root";   
  
$dbpasswd "";   

  
$dbcnx mysql_connect($dblocation$dbuser$dbpasswd);
  if (!
$dbcnx)   
  {   
    echo 
"<p>К сожалению, не доступен сервер mySQL</p>";   
    exit();   
  }   
  if (!
mysql_select_db($dbname,$dbcnx) )   
  {   
    echo 
"<p>К сожалению, не доступна база данных</p>";   
    exit();   
  }   
  
$ver mysql_query("SELECT VERSION()");   
  if(!
$ver)   
  {   
    echo 
"<p>Ошибка в запросе</p>";   
    exit();   
  }   
  echo 
mysql_result($ver0);   
?>

   
 
 автор: Trianon   (19.10.2006 в 20:44)   письмо автору
 
   для: Mpak   (19.10.2006 в 20:10)
 

Версия прописана вовсе не в БД.
поменяйте местами фрагменты - увидите версию:

<?php    
  $dblocation 
"localhost";    
  
$dbname "test";    
  
$dbuser "root";    
  
$dbpasswd "";    

  
$dbcnx mysql_connect($dblocation$dbuser$dbpasswd); 
  if (!
$dbcnx)    
  {    
    echo 
"<p>К сожалению, не доступен сервер mySQL</p>";    
    exit();    
  }    
  
$ver mysql_query("SELECT VERSION()");    
  if(!
$ver)    
  {    
    echo 
"<p>Ошибка в запросе</p>";    
    exit();    
  }    
  echo 
mysql_result($ver0);    
  if (!
mysql_select_db($dbname,$dbcnx) )    
  {    
    echo 
"<p>К сожалению, не доступна база данных</p>";    
    exit();    
  }    
?> 

   
 
 автор: Mpak   (19.10.2006 в 21:02)   письмо автору
 
   для: Trianon   (19.10.2006 в 20:44)
 

Спасибки, БОЛЬШИЕ!!!

   
 
 автор: Mpak   (19.10.2006 в 14:27)   письмо автору
 
   для: Mpak   (19.10.2006 в 13:31)
 

Извините вместо этого сообщения была написана глупость...

   
Rambler's Top100
вверх

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