|
|
|
| Имеется у меня простой запрос на вывод данных из MySQL
$query = "SELECT * FROM table
WHERE id_parent=".$_GET['id_parent']."
ORDER BY pos";
$ctg = mysql_query($query);
if(!$ctg) puterror("Ошибка при обращении к каталогу");
<table class="table" style="width: 100%; border-collapse: collapse;" border="1" cellpadding="3" cellspacing="0" rules="all">
<tr class="zagtrtable" align="center">
<td>№</td>
<td>А</td>
<td>Б</td>
<td>С</td>
<td>Д</td>
<td>Е</td>
</tr>
....
echo "<tr>
<td> ".$i."</td>
<td> ".$par['currency']."</td>
<td> ".$par['su']."</td>
<td> ".$par['pricemeter']."</td>
<td> ".$par['hb']."</td>
<td> ".$par['pit']."</td>
</tr>";
$i++;
}
}
|
Если его запустить, то выводится до 3000 строк на странице. Как можно организовать, чтобы можно было выводить, допустим по 20, 50, 100 и тому подобное строк на странице. И надпись примерно такая "Показывать 20 / 50 / 100 на страницу". По умолчанию, например выводится 50 и можно нажимая на 20 или 100 делать вывод, соответственно по 20 или 100 строк на странице. И конечно же надпись например для 20 строк - 1..20 | 21..40 | 41..60 и т.п.... - это, соответственно, чтобы "листать" страницы. | |
|
|
|
|
|
|
|
для: Vova
(15.06.2006 в 16:43)
| | Попробуй что то типа такого, если я где то ошибся с выводом из базы значений, поправте сами
В данном случае выводит по 10 на страницу, а там дальше сами додумаете, это уже легко
<?
$per_page=10;
if (isset($_GET['page'])) $page=($_GET['page']-1); else $page=0;
// вычисляем первый оператор для LIMIT
$start=abs($page*$per_page);
// составляем запрос и выводим записи
// переменную $start используем, как нумератор записей.
$query = "SELECT * FROM table WHERE id_parent=".$_GET['id_parent']." ORDER BY pos LIMIT $start,$per_page";
$result = mysql_query($query);
$num_result = mysql_num_rows($result);
for($i=0; $i<$num_result; $i++)
{
$par = mysql_fetch_array($result);
?>
<tr>
<td> <? echo$par['currency']; ?></td>
<td> <? echo $par['su']; ?>"</td>
<td> <? echo$par['pricemeter']; ?></td>
<td> <? echo$par['hb']; ?></td>
<td> <? echo$par['pit']; ?></td>
</tr>
<?
}
?>
<br><br>
<font class=page><b>Страницы: </b></font>
<?
$query="SELECT count(*) FROM table WHERE id_parent=".$_GET['id_parent']."";
$res=mysql_query($query);
$row=mysql_fetch_row($res);
$total_rows=$row[0];
$num_pages=ceil($total_rows/$per_page);
for($i=1;$i<=$num_pages;$i++) {
if ($i-1 == $page) {
echo "<b>".$i."</b> ";
} else {
echo "<b><a href=".$_SERVER['PHP_SELF']."page=".$i.">".$i."</b> ";
}
}
?>
|
| |
|
|
|