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

Форум Apache

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

 

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

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

тема: Настроика Apache в связке с PHP 5 и MySQL
 
 автор: bokul   (15.07.2006 в 21:04)   письмо автору
 
 

Установил сначала Apache в связке с PHP 5 - все работает, но сейчас начал изучать MySQL и
понадобилось его установить. Вроде все делаю как и в http://softtime.ru/info/articlephp.php?id_article=24, но при запуске проверочного скрипта появляется пустая страница. Подскаите, пожалуйста, в чем проблема.

   
 
 автор: glsv (Дизайнер)   (15.07.2006 в 21:44)   письмо автору
 
   для: bokul   (15.07.2006 в 21:04)
 

Не подключено к PHP расширение MySQL. Посмотрите соответствующие темы.

   
 
 автор: bokul   (15.07.2006 в 23:18)   письмо автору
 
   для: glsv (Дизайнер)   (15.07.2006 в 21:44)
 

Да я уже все перечитал, все перепробовал , но ничего не получается, уже голова от этого едет.
Вопрос: php.ini должен быть одинаковым в папках C:\php\ и C:\WINDOWS\ ?

   
 
 автор: bokul   (15.07.2006 в 23:28)   письмо автору
 
   для: glsv (Дизайнер)   (15.07.2006 в 21:44)
 

Еще вопрос: что должно находится в папке C:\php\ext\ ? У меня там ничего нет.
Щас запустил php.exe, он мне пишет, что не может запустить библиотеку 'C:\php\ext/php_mysql.
Она там должна быть?

   
 
 автор: bokul   (15.07.2006 в 23:36)   письмо автору
 
   для: bokul   (15.07.2006 в 23:28)
 

Скопировал в C:\php\ext\ библиотеку php_mysql, теперь вместо пустой страницы выводиться
надпись "К сожалению, не доступен сервер mySQL" . Вот скрипт на котором я проверяю:

<?php 
  $dblocation 
"127.0.0.1"
  
$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); 
?> 

   
 
 автор: cheops   (16.07.2006 в 00:28)   письмо автору
 
   для: bokul   (15.07.2006 в 23:36)
 

У вас имеется FireWall? Если да, то отключите его на время проверки - ничего не меняется?

   
 
 автор: bokul   (16.07.2006 в 00:52)   письмо автору
 
   для: cheops   (16.07.2006 в 00:28)
 

Не увидел сначала вашего поста...
Да есть, не меняется.

   
 
 автор: cheops   (16.07.2006 в 00:27)   письмо автору
 
   для: bokul   (15.07.2006 в 21:04)
 

Какие точно версии MySQL и PHP?

   
 
 автор: bokul   (16.07.2006 в 00:30)   письмо автору
 
   для: cheops   (16.07.2006 в 00:27)
 

php-5.1.4, mysql-4.1.20

   
 
 автор: bokul   (16.07.2006 в 04:35)   письмо автору
 
   для: bokul   (15.07.2006 в 21:04)
 

Выложите, пожалуйста, кто-нибудь рабочий php.ini и напишите где что у вас находится.
У меня, например, вот так:
C:\php\
C:\Program Files\Apache Software Foundation\Apache2.2\
C:\Program Files\MySQL\MySQL Server 4.1\

Повторю два наиболее интересующих меня вопроса:
1: Что должно быть в папке C:\папка с php\ext\ ?
2: Файлы php.ini в C:\WINDOWS\ и в C:\папка с php\ должны быть одинаковы или нет?

Буду рад любой помощи.

   
 
 автор: RV   (16.07.2006 в 05:46)   письмо автору
 
   для: bokul   (16.07.2006 в 04:35)
 

[поправлено модератором]

   
 
 автор: bokul   (16.07.2006 в 06:13)   письмо автору
 
   для: RV   (16.07.2006 в 05:46)
 

Теперь я вообще ничего не понимаю... я загрузил php.ini с указанной вами ссылки, чуток
отредактировал его - изменил extension_dir ="c:/php-5.0/ext" на extension_dir ="c:/php/ext" ,
скопировал его в папку ="c:/php" и "C:\WINDOWS\" перезапустил Apach и попробовал испробовать скрипт приведенний на ихней страницы, на мое глубочайшее удивление он мне вывел вот это

 Current PHP version: 5.1.4
Database "mysql"
Table: columns_priv
Table: db
Table: func
Table: help_category
Table: help_keyword
Table: help_relation
Table: help_topic
Table: host
Table: tables_priv
Table: time_zone
Table: time_zone_leap_second
Table: time_zone_name
Table: time_zone_transition
Table: time_zone_transition_type
Table: user
Database "test"


я уже начал радоватся, но когда снова запустил выше приведенний скрипт( см 4-ый пост) получил :
К сожалению, не доступен сервер mySQL


Объясните мене почему один скрипт работает, а другой - нет и работает ли у меня mySQL?

   
 
 автор: RV   (16.07.2006 в 06:33)   письмо автору
 
   для: bokul   (16.07.2006 в 06:13)
 


<?
$dbcnx 
= @mysql_connect($dblocation$dbuser$dbpasswd);  
  if (!
$dbcnx)  
  {  
    echo 
"<p>К сожалению, не доступен сервер mySQL</p>";  
    exit();  
  }  
?>

следует писать примерно так:

<?
$dbcnx 
mysql_connect($dblocation$dbuser$dbpasswd) or die (mysql_error());  
 
?>


во вторых вместо 127.0.0.1 пробуем писать localhost

[поправлено модератором]

   
 
 автор: bokul   (16.07.2006 в 07:07)   письмо автору
 
   для: RV   (16.07.2006 в 06:33)
 

Значит проблема со скриптом, база работает?


Вот измененный скрипт :


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

$dbcnx mysql_connect($dblocation$dbuser$dbpasswd) or die (mysql_error());
  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); 
?> 


Выводит :
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'localhost' (using password: NO) in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\index.php on line 7
Access denied for user 'root'@'localhost' (using password: NO)

   
 
 автор: RV   (16.07.2006 в 07:20)   письмо автору
 
   для: bokul   (16.07.2006 в 07:07)
 

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

   
 
 автор: bokul   (16.07.2006 в 07:26)   письмо автору
 
   для: RV   (16.07.2006 в 07:20)
 

nik - bokul
pass - 12345
А можна как-нибудь поменять эти данные без перестановки базы?

   
 
 автор: RV   (16.07.2006 в 07:27)   письмо автору
 
   для: bokul   (16.07.2006 в 07:26)
 

вы не мне уточняйте эти данные а базе

   
 
 автор: bokul   (16.07.2006 в 07:41)   письмо автору
 
   для: RV   (16.07.2006 в 07:27)
 

Дело в том что я не помню под каким ником инсталировал базу.

   
 
 автор: RV   (16.07.2006 в 07:43)   письмо автору
 
   для: bokul   (16.07.2006 в 07:41)
 

если скрипт, приведенный по моей ссылке выдал вам что-то из базы, то какие могут быть проблемы?

   
 
 автор: bokul   (16.07.2006 в 07:47)   письмо автору
 
   для: RV   (16.07.2006 в 07:43)
 

Вот строка которую там предлагали отредактировать:

$link = mysql_connect("localhost", "root","sanda27") or die("Could not connect");

как видите я не ввожу ник, только пароль.

   
 
 автор: RV   (16.07.2006 в 07:51)   письмо автору
 
   для: bokul   (16.07.2006 в 07:47)
 

root это что?

   
 
 автор: bokul   (16.07.2006 в 07:52)   письмо автору
 
   для: RV   (16.07.2006 в 07:51)
 

/*
В этой строчке измените пароль доступа к mysql НА ТОТ,КОТОРЫЙ ВЫ ВВОДИЛИ ПРИ УСТАНОВКЕ MYSQL!!!
$link = mysql_connect("localhost", "root","YOURPASSWORD") or die("Could not connect");
*/

   
 
 автор: RV   (16.07.2006 в 07:54)   письмо автору
 
   для: bokul   (16.07.2006 в 07:52)
 

[поправлено модератором]

   
 
 автор: bokul   (16.07.2006 в 08:06)   письмо автору
 
   для: RV   (16.07.2006 в 07:54)
 

Вы не подумайте, что я хочу скрыть от вас эти данные, чесно говоря мне всеравно, но я действительно не помню их. Могу заново переустановить базу с новим ником и паролем и
тогда сказать их точно .

Вот модифицированный код с приведенного вами линка, он работает, ну по крайней
мере показывает выше приведенную инфу.


    <?php
    
print "Current PHP version: <b> "phpversion() ."</b>";
    
    
    
    
    
    
    
    
    
$link mysql_connect("localhost""root","sanda27") or die("Could not connect");
    if( !
$link ) die( mysql_error() );
    
    
$db_list mysql_list_dbs($link);
    
    while (
$row mysql_fetch_object($db_list)) 
    {
        echo 
"<h3>Database \"".$row->Database."\"</h3>\n";
        
$result mysql_list_tables($row->Database); 
        
        if(!
$result) die( "DB Error, could not list tables\n MySQL Error: ".mysql_error() );
        else {
            while (
$row mysql_fetch_row($result))
            print 
"Table: $row[0]<br>";
            
mysql_free_result($result);
        }
    }
    
?> 

   
 
 автор: bokul   (16.07.2006 в 08:41)   письмо автору
 
   для: RV   (16.07.2006 в 07:54)
 

Только что переустановил базу. Ника я не помню потому что
его там и не надо вводить, надо ввести только пароль root
пользователя. После установки снова попробовал запустить
"проблемный" скрипт с
$dbuser = "root";
$dbpasswd = "sanda" - новый пароль

Результат тоже новый:
4.1.20-community-nt

Это значит, что база работает?

   
 
 автор: RV   (16.07.2006 в 09:07)   письмо автору
 
   для: bokul   (16.07.2006 в 08:41)
 

да

   
 
 автор: bokul   (16.07.2006 в 09:11)   письмо автору
 
   для: RV   (16.07.2006 в 09:07)
 

RV огромнейшее тебе спасибо за терпения и помощь!!!!!

   
 
 автор: bokul   (16.07.2006 в 09:52)   письмо автору
 
   для: bokul   (15.07.2006 в 21:04)
 

База вроде работает, но остались вопросы по ее установки:
1: Что должно быть в папке C:\папка с php\ext\ ?
2: Файлы php.ini в C:\WINDOWS\ и в C:\папка с php\ должны быть одинаковы или нет?

и новый

3: при следующей инсталляции базы обязательно ли запускать ее setup или достаточно
скопировать ее установочную папку и отредактировать php.ini?

   
 
 автор: RV   (16.07.2006 в 09:57)   письмо автору
 
   для: bokul   (16.07.2006 в 09:52)
 

1) скорее всего модули для пхп типа php_***.dll
2) предполагается что вы копируете php.ini из папки с php в c:\windows, т.е. используется только c:\windows\php.ini
3) база висит как сервис. в любом случае просто запустить экзешник не получится, его надо как минимум оформить как сервис в реестре

   
 
 автор: bokul   (16.07.2006 в 10:04)   письмо автору
 
   для: RV   (16.07.2006 в 09:57)
 

Еще раз вам большое спасибо!

   
Rambler's Top100
вверх

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