Помогите пожалуйста: необходимо из базы данных отобразить список таблиц. Я сделал так: PHP: $host = "localhost"; $user = "root"; $database = "subjects"; $connect_mysql = mysql_connect($host, $user); require ('/WEB_Server/Host/lexx.com/setupForum.php'); $smarty = new Smarty_Forum; $smarty->force_compile = TRUE; if ($res = mysql_list_tables($database)) { while($row=mysql_fetch_array($res)) { $rows = $row['']; $smarty->assign('rows', $rows); } } else { echo "Ошибка:".mysql_error(); } $smarty->display('contents_base.html'); HTML: <table width="100%" border='2'> <tr> <td>{foreach item=row from=$rows} {$rows} {/foreach}</td> </tr> </table> но полочается что если сделать так: PHP: .... while($row=mysql_fetch_array($res)) { $rows = $row['']; $smarty->assign('rows', $rows); } .... то выводится только одно имя таблицы, а если сделать вот так: PHP: .... while($row=mysql_fetch_array($res)) { $rows = $row['']; $smarty->assign('rows', $rows); $smarty->display('contents_base.html'); } .... то выводит все имена таблиц но множит HTML скрипт и получается если добавить например картинку то эта картинка будет множится по количеству таблиц в базе. Мне же надо чтобы имена таблиц отображались в одной ячейке таблицы.
PHP: <?php if ($res = mysql_list_tables($database)) { while($row=mysql_fetch_array($res)) $rows[] = $row[]; $smarty->assign('rows', $rows); } ?>
такой вариант пробовал, выдает ошибку: Fatal error: Cannot use [] for reading in D:\("такойто макшрут") on line 21
уф. PHP: <?php if ($res = mysql_list_tables($database)){ while($row = mysql_fetch_row($res)) $rows[] = $row[0]; $page->assign('rows',$rows); } ?> HTML: <table width="100%" border="2"> <tr> <td>{foreach item=row from=$rows}{$row}<br />{/foreach}</td> </tr> </table>