Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Работа с базой данных


Автор: maxnsk82 25.6.2010, 09:30
Как вывести список таблиц в БД и количество записей в ней?
Не могу сообразить, даже тут с ошибкой, хотя пытаюсь чтоб хоть что-то вывел:

Код

if(mysql_connect($_GET['server'],$_GET['name'],$_GET['pswd'])or die("Not connect"))
{
    if(mysql_select_db($_GET['bd'])or die("not this base"))
    mysql_query
    ("
        SELECT * FROM `$_GET['bd']`//в этой строке ошибка, типа не строку передаю..
    ") or die("Ошибка соединения");
    mysql_close();
}

Автор: patap 25.6.2010, 09:36
так
Код

mysql_query
    ("
        SELECT * FROM `{$_GET['bd']}`//в этой строке ошибка, типа не строку передаю..
    ")


или так 

Код

mysql_query
    ('
        SELECT * FROM `' . $_GET['bd'] . '`//в этой строке ошибка, типа не строку передаю..
    ')

Автор: maxnsk82 25.6.2010, 09:44
Ошибка при загрузке исправилась. Но почему-то не выводит ничего? Ещё смотрю в инете как по заданию сделать, вроде есть команда SHOW TABLE - она покажет список таблиц и кол-во записей в них? И как правильно это записать? В инете пока не нашёл..

Автор: Rusman 25.6.2010, 09:44
Держи:
Код

$dbcnx=@mysql_connect($dblocation,$dbuser,$dbpassword);
@mysql_select_db($dbname,$dbcnx);

function get_database_tables()
{
    $ret = array();
    $r = mysql_query("SHOW TABLES");
    if (mysql_num_rows($r)>0)
    {
        while($row = mysql_fetch_array($r, MYSQL_NUM))
        {
            $ret[] = $row[0];
        }
    }
    return $ret;
}

$bases=get_database_tables();
$i=0;
while ($i<=count($bases)) {
$kol=mysql_num_rows(mysql_query("select * from ".$bases[$i]));
echo $bases[$i]," - ($kol)<br>";
$i++;
}

Автор: maxnsk82 25.6.2010, 09:45
т.е. не то чтоб совсем ничего: "Ошибка соединения" пишет - запрос неправильный наверное?

Автор: ksnk 25.6.2010, 09:45
Цитата(maxnsk82 @  25.6.2010,  09:30 Найти цитируемый пост)
Как вывести список таблиц в БД и количество записей в ней?

http://www.mysql.ru/docs/mysql-man-5.0-en/tutorial.html#getting-information, для начала...

Автор: patap 25.6.2010, 09:49
чтобы видеть реальные ошибки
Код
die(mysql_error());

Автор: maxnsk82 25.6.2010, 09:53
Да понимаю что всё в книжках и инете найти можно, просто времени нет - вечером надо лабу сдать и экзамен потом как-то smile , да и тема скорее для Центра помощи....Спасибо Rusman за код)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)