|
|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : denis v. yastrebov 2:5020/400 04 Aug 2002 16:25:31 To : Roman Onufryk Subject : Re: Mysql+HTML::Template -------------------------------------------------------------------------------- "Roman Onufryk" <Roman.Onufryk@p1.f27.n4626.z2.fidonet.org> сообщил/сообщила в новостях следующее: news:1028346853@p1.f27.n4626.z2.ftn... > Естественно, этот фрагмент не работает так, как надо - он выводит только > последнюю запись. Hижеприведенный вроде работал. Примечание: использован DBI. table.tmpl ==================== <TABLE CELLPADDING=2 CELLSPACING=1 BORDER=0 WIDTH=100%> <TR BGCOLOR=#CCCCCC> <TD><B>ID</B></TD> <TD><B>Name</B></TD> <TD><B>Автор</B></TD> <TD><B>Дата</B></TD> <TD><B>Type</B></TD> <TD><B>Текст</B></TD> </TR> <TMPL_UNLESS NAME=Empty> <TR BGCOLOR=#CCCCCC><TD colspan=8>Записей нет</TD></TR> <TMPL_ELSE> <TMPL_LOOP NAME=A_LIST> <TR BGCOLOR=#CCCCCC valign=top> <TD>%id%</TD> <TD>%name%</TD> <TD>%author%</TD> <TD>%date%</TD> <TD>%type%</TD> <TD>%content%</TD> </TR> </TMPL_LOOP> </TMPL_UNLESS> </TABLE> =============== use DBI; use HTML::Template; sub Articles { my $RetVal; my $DB = DBI->connect( $DB_NAME, $DB_USER, $DB_PASSWD, { PrintError=>1, RaiseError=>1 } ); return -1 if( !defined( $DB ) ); my $Page = HTML::Template->new(filename => 'table.tmpl', vanguard_compatibility_mode => 1 ); my @arr; my $Empty = 0; my $dQuery = $DB->prepare( 'SELECT id, name, author, date, type, content FROM articles ORDER BY name' ); $dQuery->execute; while( my( $ID, $Name, $Author, $Date, $Type, $Content ) = $dQuery->fetchrow_array ) { my %data; $Empty++; $data{id} = $ID; $data{name} = $Name; $data{author} = $Author; $data{date} = $Date; $data{type} = $Type; $data{content} = $Content; push(@arr, \%data); } $Page->param( A_LIST=>\@arr, Empty=>$Empty, ); $DB->disconnect; return $Page->output; } ================================= -- ---- denis v. yastrebov www.psychiatrist.ru denisy@psychiatrist.ru --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/113460b9bf514.html, оценка из 5, голосов 10
|