|
|
|
| Знаю, что вопрос глупый, но все таки, как создать и проверить наличие базы данных.
У меня установлен на локальной машине, apache+php+mysql.
Причем mysql работает, так как при переходе по ссылке mysql.php оно как и нужно выдает версию.
Но когда я записываю скрипт для создания базы
datebase.php
<?php
CREATE DATABASE forum;
?>
|
И просмотра существующих баз данных
show.php
и после захажу через браузер, то собстенно ничего не выдает. | |
|
|
|
|
|
|
|
для: agnostic
(12.02.2007 в 22:38)
| | В языке php нет операторов
CREATE DATABASE forum;
Show databases;
|
Нет даже оператора
Тем не менее, версию MySQL Вы увидели.
Вот теперь разглядывайте mysql.php и пытайтесь понять, как Вы её получили.
Возможно, похожим образом Вам удастся выполнить и оставшиеся два оператора.
Языка SQL.
Прежде чем исполнять скрипты нужно хотя бы немножечко думать иногда. | |
|
|
|
|
|
|
|
для: Trianon
(12.02.2007 в 23:53)
| | Спасибо за подсказку.
Скрипт показывающий версию был отдельный.
Просто в учебнике в главе sql я видел именно те скрипты, которые пытался испольнить, причем даже не скрипты, а отдельные команды типа однако ничего не выходило. А верхней части работающего скрипта я в начале не встречал ($dblocation = "127.0.0.1";
$dbname = "test";
$dbuser = "root";
...)
Однако не смотря но то,что скрипт показывающий версию - работает, при добавлении в конец show databases, он перестает это делать. И обязательными ли, для любой базы являются верхние строки?
<?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($ver, 0);
Show databases;
?>
|
Извините, конечно за глупый вопрос, но я действительно не понимаю, почему при добавлении Show databases ничего не происходит. Даже версия не показывается. | |
|
|
|
|
|
|
|
для: agnostic
(13.02.2007 в 22:02)
| | Потому что, еще раз говорю, Show databases; это не оператор языка php.
И в файл php его ставить бессмысленно. В результате php-скрипт всего лишь будет отвергнут из-за ошибки синтаксиса. До SQL-сервера дело вообще не дойдет.
Текст, который Вы показываете - это php-программа.
Строка, которую Вы пытаетесь присунуть - это SQL-оператор. | |
|
|
|
|
|
|
|
для: Trianon
(13.02.2007 в 22:16)
| | Здравствуйте всем !
Я сам еще только начал работать с MySQL,
но мне кажется, уважаемый Trianon намекает вам
на использования функций "взаимодействия" PHP и MySQL.
Исходя из проверочного кода
<?php
$dblocation = "127.0.0.1";
$dbname = "test";
$dbuser = "root";
$dbpasswd = "";
$dbcnx = mysql_connect($dblocation, $dbuser, $dbpasswd);
if (!$dbcnx)
{ //и так далее
?>
|
можно "предположить", что для передачи операторов SQL в коде PHP, нужно
и использовать эти функции...
вот например, для зацепки...
<?
$new_db = "CREATE DATABASE new_database";
$add_db = mysql_query($new_db);
?>
|
Рекомендую поинтересоваться изданиями авторов сайта.
Книжки отличные ! Приобрел 2 ...пока... "Самоучитель PHP5 -2 и Практика создания Web-сайтов"...
так дело пошло быстрее... в плане обучения...
Книжки замечательные ! Спасибо авторам !!!
Спасибо ! | |
|
|
|