|
|
|
| Здрасте.
Вот занялся программированием на php+mysql, и возникли некоторые трудности, надеюсб вы смолжете мне помочь. :-)
1.Посредством php получается создать базу данных, только если она начинается с test, а хотелось бы назвать без начального test.
2.Если создам посредством команндной строки базу данных без начального test, то в php немогу к ней подключиться.
3.И последний вопрос. Как передать в функцию класса массив?
Надеюсь вы мне сможете помочь.:-) | |
|
|
|
|
|
|
|
для: MadMaxx
(03.01.2005 в 16:23)
| | 1-2) Ситуация довольно не типичная, у MySQL не должно быть ни каких причин вести себя так. Не могли бы вы сообщить номер версии MySQL и точный порядок создания базы, а ещё лучше код при помощи которого вы создаёте базу данных. Вы создаёте базу данных от имени root или анонимного пользователя и от имени какого пользователя работате потом с MySQL из PHP?
http://www.softtime.ru/forum/read.php?id_forum=3&id_theme=919
3) Точно так же как и в обчную функцию, через параметр. | |
|
|
|
|
|
|
|
для: cheops
(03.01.2005 в 17:08)
| | номер версии MySQL - 3.22.24
код,при помощи которого создаю БД:
<?
$new_db = "(название БД)";
$connection = @mysql_connect("localhost", "myadmin", "123321") or die("Couldn't connect.");
$result = @mysql_create_db($new_db, $connection)
or die("Couldn't create database.");
if ($result) {
$msg = "<P>Database has been created!</p>";
}
?>
<HTML>
<HEAD>
<TITLE>Create a MySQL Database</TITLE>
</HEAD>
<BODY>
<? echo "$msg"; ?>
</BODY>
</HTML>
|
и тут если в название бд указать как, например MyShop, выдаст ошибку, а если testShop - создаст | |
|
|
|
|
|
|
|
для: MadMaxx
(04.01.2005 в 02:28)
| | Хм... попробуйте передать базе данных SQL-запрос на создение новой базы данных:
<?php
$new_db = "new_database";
$connection = @mysql_connect("localhost", "root", "") or die("Couldn't connect.");
$result = @mysql_query("CREATE DATABASE $new_db")
or die("Couldn't create database.");
if ($result)
{
$msg = "<P>Database has been created!</p>";
}
else
{
echo mysql_erorr();
$msg = "<P>Database has not been created!</p>";
}
?>
<HTML>
<HEAD>
<TITLE>Create a MySQL Database</TITLE>
</HEAD>
<BODY>
<? echo "$msg"; ?>
</BODY>
</HTML>
|
Как себя ведёт база?
PS Кстати, пользователь myadmin существует? | |
|
|
|
|
|
|
|
для: cheops
(04.01.2005 в 03:02)
| | При этом коде таблица создалась.
Тока я теперь как myadmin ничего сделать немогу, даже список баз данных не выводит, код
<?
$connection = @mysql_connect("localhost", "myadmin", "123321")
or die("Couldn't connect.");
$dbs = @mysql_list_dbs($connection)
or die("Couldn't list databases.");
$db_list = "<ul>";
$db_num = 0;
while ($db_num < mysql_num_rows($dbs)) {
$db_names[$db_num] = mysql_tablename($dbs, $db_num);
$db_list .= "<li>$db_names[$db_num]";
// list tables on each database
if (($db_names[$db_num] != "mysql") && ($db_names[$db_num] != "tempdata")) {
$tables = @mysql_list_tables($db_names[$db_num])
or die("Couldn't list tables.");
$table_list = "<ul>";
$table_num = 0;
while ($table_num < mysql_num_rows($tables)) {
$table_names[$table_num] = mysql_tablename($tables, $table_num);
$table_list .= "<li>$table_names[$table_num]";
$table_num++;
}
$table_list .= "</ul>";
}
$db_list .= "$table_list";
$db_num++;
}
$db_list .= "</ul>";
?>
<HTML>
<HEAD>
<TITLE>MySQL Tables</TITLE>
</HEAD>
<BODY>
<P><strong>Databases and tables on localhost</strong>:</p>
<? echo "$db_list"; ?>
</BODY>
</HTML>
|
пока я не запустил ваш скрипт все выводило:-(
а если заменить
$connection = @mysql_connect("localhost", "myadmin", "123321")
or die("Couldn't connect.");
|
на
$connection = @mysql_connect("localhost", "root", "") or die("Couldn't connect.");
|
то выводит.
Пользователя myadmin я вводил через командную строку следующим образом:
c:\mysql\bin>mysqld-shareware
c:\mysql\bin>mysql
mysql> use mysql
mysql> insert into user (host,user,password) values ('localhost','myadmin',password('123321'));
mysql> exit
c:\mysql\bin>mysqladmin flush-privileges
|
это команды которые я вводил. Так было написанно в книге. | |
|
|
|
|
|
|
|
для: MadMaxx
(04.01.2005 в 20:34)
| | Понятно... так уже пользователей не заводят - так как помимо того, что пользователь заведён следует назначить ему привелегии на операторы и таблицы, обычно для этого используют оператор GRANT, а вообще чтобы спокойно жить используйте root, у вас ведь локальная машина, а не сервер.
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=87 | |
|
|
|
|
|
|
|
для: MadMaxx
(04.01.2005 в 02:28)
| | хм. у меня все создалось - и MyShop и testShop.... | |
|
|
|