пейджинг с php? - PullRequest
       50

пейджинг с php?

1 голос
/ 22 января 2010

привет, я хочу перечислить содержимое как 10 на страницу

это исходный код для каждого контента

<?
while ($arama=mysql_fetch_array($arama_sonuc)) {    
?>
<h4><a href="oku.php?id=<?=$arama[id]?>"><?=$arama[baslik]?></a></h4>
                    <div class="article box">
                        <div class="article-desc-oku">

                            <p class="info">Yayınlanma: <strong><?=$arama[eklemetarihi]?></strong><br />
                            Yazan:  <strong><a href="#">Ronnie C. Lynwood</a></strong><br /><?=$arama[tiklanma]?> kez okunmuş.<br />
                            <?php rating_form("$arama[id]"); ?>
                            </p>

                        </div>
                  <?=$arama[spot]?>
                    </div> <!-- /article -->

Ответы [ 5 ]

4 голосов
/ 22 января 2010

Я думаю, вам лучше использовать класс подкачки, а не создавать свой собственный. Это сэкономит вам много времени и в следующих проектах. Ваша текущая проблема также будет решена. Проверьте это.

Расположение загрузки

2 голосов
/ 22 января 2010

Похоже, что вы используете MySQL: вы можете создать запрос с помощью команды SQL LIMIT .

Например:

SELECT * FROM myTable LIMIT 5, 10

Скажет MySQL возвращать только первые десять элементов после 5-й строки. Вы можете использовать параметр в строке запроса для создания соответствующего SQL-запроса, чтобы «спросить» у базы данных, «страницу», которую вы хотите видеть.

1 голос
/ 22 января 2010

я использовал коды ниже, чтобы сделать нумерацию страниц

<?
if (isset($_GET['sayfa'])) {
   $pageno = $_GET['sayfa'];
} else {
   $pageno = 1;
} // if
$query = mysql_query("SELECT count(id) FROM yazilar");
$query_data = mysql_fetch_row($query);
$numrows = $query_data[0];
$rows_per_page = 10;
$lastpage      = ceil($numrows/$rows_per_page);
$pageno = (int)$pageno;
if ($pageno > $lastpage) {
   $pageno = $lastpage;
} // if
if ($pageno < 1) {
   $pageno = 1;
} // if
$limit = 'ORDER BY id DESC LIMIT ' .($pageno - 1) * $rows_per_page .',' .$rows_per_page;
$query = mysql_query("SELECT * FROM yazilar $limit");
if ($pageno == 1) {
   echo " İLK ÖNCEKİ ";
} else {
   echo " <a href='{$_SERVER['PHP_SELF']}?sayfa=1'>İLK</a> ";
   $prevpage = $pageno-1;
   echo " <a href='{$_SERVER['PHP_SELF']}?sayfa=$prevpage'>ÖNCEKİ</a> ";
} // if
echo " ( Sayfa $pageno ) ";
if ($pageno == $lastpage) {
   echo " SONRAKİ SON ";
} else {
   $nextpage = $pageno+1;
   echo " <a href='{$_SERVER['PHP_SELF']}?sayfa=$nextpage'>İLERİ</a> ";
   echo " <a href='{$_SERVER['PHP_SELF']}?sayfa=$lastpage'>SON</a> ";
} // if
?>
1 голос
/ 22 января 2010

Здесь http://php.about.com/od/phpwithmysql/ss/php_pagination.htm вы можете найти полный пример кода по нумерации страниц. Это также очень хорошо объяснено.

Извините, но я не могу предложить больше, просто увидев фрагмент кода ...

0 голосов
/ 22 января 2010

Позвольте мне предложить некоторые существующие решения PHP

Zend_Paginator , слабо связанные могут использоваться автономно без всей конструкции.

Если вы хотите создать свой собственный вариант, я рекомендую счетные классы SPL и итераторы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...