|
|
|
|
для: mag
(17.08.2006 в 10:38)
|
| насколько я поняла, вам нужна таблица из полей? не "одна строка в базе - одна строка в
таблице", а "много одноименных полей из разных строк в одной строке таблицы"? вот примерно
скрипт, выводящий картинки из одного поля, строящий таблицу и листающий страницы, если все
картинки не влезли в одну таблицу. количество строк и столбцов можно регулировать. запрос и
подключение к базе, стили ссылок и т.п.- ваши.
<table align=center border="0" cellpadding="5">
<tr>
<td align="left" colspan="2">
<?php
require"config.php";
$show_cols = 2; // kol-vo stolbcov na stranitce
$show_rows =2; //kol-vo strok na stranice
if (!isset($start1)) $start1=1;
//opredelyaem skol'ko strolbcov i gde mi naxodimsya
$query = ("SELECT * FROM ecard_pics WHERE own like 'Y' and markdel like 'N' order by pic_id ");//vibiraem vse
$array=mysql_query($query);
$num_rows = mysql_num_rows($array); //kolvo strok v baze
$cols=floor($num_rows/$show_cols); //kolvo stolbcov
$pages = floor($num_rows/($show_cols*$show_rows));//kol-vo stranic
if ($num_rows > $show_cols*$show_rows*$pages) $pages++; //esli strok v baze > chem pom. na 1 str. perexodim na sled str.
for ($ii=1; $ii<=$pages; $ii++) { //cikl perebora vsex stranic
$from1=$ii*$show_rows*$show_cols-($show_rows*$show_cols-1); //kol-vo pokaz-x str-c minus kol-vo stranic minus 1
$to1=$ii*$show_rows*$show_cols; //kol-vo pokazan. stranic
if ($to1 > $num_rows) $to1 = $num_rows; //esli pokaz. str-c > chem strok v baze, to delaem =
if ($start1==$from1) echo "| <font style=\"font-face: Verdana, Arial, Helvetica, sans-serif;
color : #ff8c00; font-weight : bold; font-size: 12px;\">$from1 - $to1</font>";
else
{echo " | <a href=\"view4.php?start1=$from1&gal=$gal\" style=\"font-face: Verdana, Arial, Helvetica, sans-serif;
color : #000000; font-weight : bold; font-size: 12px;\"> $from1 - $to1</a>";}
}
?>
</td></tr></table><br><br>
<?
/// vivos stranicw
if ($num_rows > $pages*$show_cols*$show_rows) $vid++;
for ($iii=0; $iii<=$vid; $iii++) {
/// vivos tablicw
if ($num_rows > $show_rows) $show_rows++;
for ($i=2; $i<=$show_rows; $i++) {
$start1=$start1 - 1;
$query = "SELECT * FROM ecard_pics WHERE own = 'Y' and markdel = 'N' ORDER BY pic_id limit $start1,$show_cols";
$start1=$start1+$show_cols + 1;
$result = mysql_query($query);
$number = mysql_num_rows($result);
echo"<table align=center border=\"0\" cellpadding=5 cellspacing=2 >";
$j = 0;
WHILE ($j < $number)
{
$pic_name = mysql_result($result,$j,"pic_name");
echo"<td align=center bgcolor=#ffffff valign=middle style=\"border-style: solid; border-color: #909090; border-width: 1px\">
<img src=\"mic/".$pic_name."\" border=0></TD>";
$j++;
}// konec vivoda stroki
}// konec vivoda tablici
}// konec vivoda stranici
/// konetc
?>
</table>
|
| |
|
|