Не могу связать PHP(5.2.3) с Mysql(6.0.0)

Sektor

Новичок
Не могу связать PHP(5.2.3) с Mysql(6.0.0)

По отдельности все работает нормально, PHP тоже компилируется без ошибок, но данные не извлекает.
Так же не могу сделать чтобы ошибки выводились в браузере а достаю их все время из файла error который находится в дирректории C:\Apache\logs.
Базу данных создавал в SQL Manager for MySQL, из командной строки mysql все нормально просматривается.

<?php
$dblocation="localhost";
$dbuser="root";
$dbname="new_db";
$dbpasswd="123";
$dbcnx=@mysql_connect($dblocation,$dbuser,$dbpasswd);
if(!$dbcnx)
{echo ("<P>В настоящий момент сервер БД недоступен!</P>");
exit();
}
if(!mysql_select_db($dbname,$dbcnx))
{
echo ("<P>Соединение с базой данных прекращенно!</P>");
exit();
}
$ath=mysql_query("select * from author");
if ($ath)
{
$autor=mysql_fetch_array($ath);
echo "имя = ".$autor['name']."<br>";
echo "пароль = ".$autor['passw']."";
echo "e-mail = ".$autor['email']."";
echo "url = ".$autor['url']."";
echo "ICQ = ".$autor['icq']."";
echo "about = ".$autor['about']."";
echo "photo = ".$autor['photo']."";
echo "time = ".$autor['time']."";
}
else
{
echo "Error: ".mysql_error()."";
exit();
}
?>
<?php
$dat=date("d.m.y");
$tm=date("h:i:s");
echo "Текущая дата: {$dat} года";?><br>
<?php echo "Текущее время: {$tm} года";?>

-~{}~ 28.07.07 13:07:

компилирую под windows
 

Wicked

Новичок
Первое, что ты должен сделать, это пойти прочесть и выполнить все, что написано здесь: PHP FAQ: Ничего не работает! Что делать???

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

@ убери.

но данные не извлекает.
что это значит? Выбирает 0 рядов?

-~{}~ 28.07.07 17:36:

если после прочтения FAQа останутся вопросы - приходи.
 

Sektor

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

ini_set('display_errors',1);
error_reporting(E_ALL);

))

а вот данные из баз данных не извлекаются вообще, может надо в конфигурациях прописать, потомучто при компиляции ошибок нет, таблицы в mysql созданны, а при написании программы в браузере данные эти не появляются.

и вообще когда компилируешь надо mysql запускать и прописывать с какой базой данных нужно работать?
 

Wicked

Новичок
да забудь ты пока про компиляцию. У тебя скрипт еле дышит, а ты сразу на php/mysql грешишь.

а вот данные из баз данных не извлекаются вообще
ты уверен, что ты соединяешься именно с тем сервером и базой данных?
ты уверен, что эти данные там вообще есть?
ты уверен, что они таки не извлекаются? Может быть они просто не показываются?

не вижу скрипта, в котором были бы var_dump($dbcnx), var_dump($ath), var_dump(mysql_num_rows($ath)), var_dump(mysql_fetch_array($ath)), ...
 

Wicked

Новичок
и вообще когда компилируешь надо mysql запускать и прописывать с какой базой данных нужно работать?
всё так же, как когда не компилируешь.

Вообще про компиляцию пока забудь.
 

Sektor

Новичок
народ просто я пока учусь только,
но ошибки все исправленны (по крайней мере в файле C:\Apache\logs\error.txt уже ничего не пишет),
база данных есть я в SQL Manager for MySQL ее создал и данные вбил, 2 строчки просто для теста, через командндную строку mysql захожу и все работает.
этот скрипт написал просто чтобы попрактиковаться.
может быть в php.ini залезть надо?
при выводе в браузере появляется просто пустое окно, даже если я дописываю ниже работающий отдельно скрипт то все равно ничего не меняется((, и в html коде так же все пусто.
 

Wicked

Новичок
при выводе в браузере появляется просто пустое окно, даже если я дописываю ниже работающий отдельно скрипт то все равно ничего не меняется((, и в html коде так же все пусто.
воот. Значит дело не в том, что данные не выводятся, а в том, что вообще нихрена не работает, правда же? Скорее всего у тебя что-нибудь типа parse error (это когда скобочку или кавычку забудешь, например, или точку с запятой,...), из-за чего скрипт вообще не может быть запущен. Только странно, что в апачевских логах ничего не пишется.
 

Sektor

Новичок
ок, ща проверю повнимательней.

-~{}~ 29.07.07 17:46:

убрал @ перед строчкой mysql_connect($dblocation,$dbuser,$dbpasswd);

выдало такую ошибку

Fatal error: Call to undefined function mysql_connect() in C:\Apache\htdocs\mysql.php on line 8
 

Wicked

Новичок
почему ты не сделал этого раньше, после моего первого ответа?

эта ошибка значит, что у тебя не подключена библиотека mysql. Я не знаю, как правильно с этим бороться именно при компиляции под виндой, но в любом случае смотри здесь - http://www.php.net/manual/en/ref.mysql.php - в пункте Installation.

Если у тебя есть соответствющий dll-файл, то наверное достаточно будет просто его включить в php.ini.
 

baev

‹°°¬•
Команда форума
У меня большие подозрения, что...

...Sektor, что Вы понимаете под словом «компиляция»?
 

Sektor

Новичок
я так понимаю компиляция, это уже набранный либо в php expert edition 4.1 либо в Дримвивере набрать код и попытаться запустить сохраненный файл в браузере
Есть другие способы?
 

Sektor

Новичок
не правильно? есть другие способы?

-~{}~ 29.07.07 19:54:

C:\Program Files\MySQL\MySQL Server 6.0\bin\libmySQL.dll
не эта случайно библиотека?
что с ней делать?
 

baev

‹°°¬•
Команда форума
Есть другие способы?
— способы-то есть...

Просто, поскольку PHP — интерпретируемый язык, не принято называть запуск php-скрипта «компиляцией».
 

Sektor

Новичок
Нет день сис. админа не отмечал так как им не являюсь))
Библиотеку связал, все заработало))
ура, спасибо всем за помощь
 
Сверху