проблем с MySQL+php

4 отговора 159 прегледа
#1

проблем с MySQL+php

Инсталирах phpTriad (apache, php, MySQL, phpMySQLAdmin)

Всичко уж e ok. В мой файл имам:

<?


$b=mysql_list_dbs();
print $b;
?>

Kaто би трябвало да получа броя на достъпните бази на MySQL сървара ми.Обаче резултатът е :

Resource id #2

това е независимо от броя на създадените БД. Защо??? Аналогично не мога да преброя таблиците в 1 БД. КЪДЕ ГРЕША?
И какво е това "link_indentifier"?
Има ли някъде on-line по-обикн.примери около МySQL i php?

Отговор
в отговор на Lina #2

Re: проблем с MySQL+php

Ами като за начало, не е зле да направиш връзка с MySQL-а ->
msql_connect('hostname'); // вероятно хоста ти е localhost (127.0.0.1)
тогава имаш шанс да ти тръгнат доста от функциите свързани с MySQL ;)

Провери в [линк] за някой tutorial - а и няма търсачка в която да напишеш PHP+tutorial и да не ти изплюе поне 50 сайта на които да намериш каквото искаш, а можеш да изтеглиш нещо и от тук:

[линк]

Отговор
в отговор на Lina #3

Re: проблем с MySQL+php

link identintifier е идентификатор на връзката към сървъра с база данни. По подразбиране е последната направена такава с mysql_connect (например)
След като изпълниш mysql_list_dbs(), променливата $b не е директно резултата който ти трябва като "таблица" или "списък", а ресурс. В случая - Resource id #2
Вместо print $b, изпозвай следния код:
while($row = mysql_fetch_array($b)){
echo $row['Database'].'
';
}
Това, което прави той е че извлича ред по ред резултата в масива $row, а в $row[Database] имаш името на базата данни.
Това е принципа на обработка на резултата от всяка sql заявка, така че прочети хубаво за mysql_fetch_ фукциите, по-конкретно mysql_fetch_array()

Разбира се, както none каза, трябва да имаш връка към базата данни, след като имаш локален сървър, $db = mysql_connect('localhost','root',''); би трябвало да ти свърши работа.... ($db е link identifier)
Айде успех, нещо много се отплеснах да обяснявам... :)

Отговор
в отговор на Lina #4

Re: проблем с MySQL+php

ето така става

echo mysql_num_rows(mysql_list_dbs());

а също и така

echo mysql_num_rows(mysql_query("SHOW databases"));

...

Редактирано от Цвeтaн Цвeтkoв на

Отговор
в отговор на toranaga #5

Re: проблем с MySQL+php

След като погледнах отново, виждам, че въпроса е за броя на базите данни, а не спъсък от имената им... - просто съм отговорил на друг въпрос...

Отговор