За последние 24 часа нас посетили 22282 программиста и 1636 роботов. Сейчас ищут 1124 программиста ...

Помогите со страницами

Тема в разделе "HUMOR.PHP.RU", создана пользователем EvelRus, 13 мар 2008.

  1. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    PHP:
    1.  
    2. <?
    3. /* Управление страницами */
    4. $res_sql = mysql_num_rows(mysql_query("SELECT * FROM mail"));
    5. $page = $_GET['page']; 
    6. if ($page == '')
    7.  { $page = '0'; }
    8. else
    9.  { $page = $page; }
    10.  
    11. $i1 = 25;
    12. $i2 = $page+$i1;
    13. $i3 = $page-$i1;
    14.  
    15. if ($page <= 0)
    16.  { $pages = "Предыдущая | <a href=index.php?page=$i2&sort=$sort>Следующая</a>"; }
    17. elseif ($page >= $res_sql-25)
    18.  { $pages = "<a href=index.php?page=$i3&sort_po=$sort>Предыдущая</a> | Следующая"; }
    19. else
    20.  { $pages = "<a href=index.php?page=$i3&sort_po=$sort>Предыдущая</a> | <a href=index.php?page=$i2&sort_po=$sort>Следующая</a>";
    21. }
    22. ?>
    23.  

    Сейчас работает предыдущая, следующая... а как сделать страницы?? 1-2-3-...???

    Заранее спасибо
     
  2. Anonymous

    Anonymous Guest

    ааааааааааааааааааааа

    www.phpfaq.ru/paginator
     
  3. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    Спасибо!
     
  4. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
  5. shreck

    shreck Активный пользователь

    С нами с:
    7 авг 2007
    Сообщения:
    479
    Симпатии:
    0
    Адрес:
    Россия, Саратов
    улыбнуло
    PHP:
    1.  
    2.   $query = SELECT COUNT(*) FROM `mail`;
    3.  
     
  6. RomanBush

    RomanBush Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    Реальные пацаны циклом пересчитывают. Типа:
    PHP:
    1. <?
    2. $res_sql = mysql_query("SELECT * FROM mail");
    3. $i=0;
    4. while ($x=mysql_fetch_array($res_sql)) $i++;
    5. ?>
     
  7. Luge

    Luge Старожил

    С нами с:
    2 фев 2007
    Сообщения:
    4.680
    Симпатии:
    1
    Адрес:
    Минск
    RomanBush
    ты б после своего поста сразу и в юмор перенёс, что ли :)
     
  8. shreck

    shreck Активный пользователь

    С нами с:
    7 авг 2007
    Сообщения:
    479
    Симпатии:
    0
    Адрес:
    Россия, Саратов
    +1
     
  9. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    За что?:))
    Я же на полном серьезе!
     
  10. RomanBush

    RomanBush Активный пользователь

    С нами с:
    5 дек 2007
    Сообщения:
    798
    Симпатии:
    0
    Адрес:
    200 км от Москвы
    Вот за это и перенесли.
     
  11. Anonymous

    Anonymous Guest

    Nemo, считай что ты попал на баш ;)))
     
  12. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    = )
    КРУТО
     
  13. Hight

    Hight Старожил
    Команда форума Модератор

    С нами с:
    5 мар 2006
    Сообщения:
    7.153
    Симпатии:
    0
    Адрес:
    из злой параллельной вселенной
    Старьё:
    PHP:
    1. <?php
    2. # paginator
    3. function paginator($page = 1, $p_num = 1, $location = NULL)
    4. {
    5.     # Пагинатор
    6.  
    7.     $p_str[] = '<table cellspacing="0px"><tr>';
    8.  
    9.     for($i = 1; $i <= 3; $i++)
    10.     {
    11.         if($page == $i and $i <= $p_num)
    12.         {
    13.             $p_str[] = '<td style="padding:3px; background-color:#fdd3d3; border:#adadad solid 1px;"><b>'.$i.'</b></td><td>&nbsp;</td>';
    14.         }
    15.         elseif($i <= $p_num)
    16.         {
    17.             $p_str[] = '<td style="padding:3px;"><a href="'.HTTP.DOMAIN.PATH.$location.'&p='.$i.SID.'">'.$i.'</a></td><td>&nbsp;</td>';
    18.         }
    19.     }
    20.  
    21.     if($p_num > 3)
    22.     {
    23.         $p_str[] = '<td>...</td><td>&nbsp;</td>';
    24.  
    25.         if($page == 3 and $p_num > 6)
    26.         {
    27.             $p_str[] = '<td style="padding:3px;"><a href="'.HTTP.DOMAIN.PATH.$location.'&p=4'.SID.'">4</a></td><td>&nbsp;</td>';
    28.         }
    29.         elseif($page >= 4)
    30.         {
    31.             if(($c_page = $page - 1) >= 4 and $c_page <= ($p_num - 3))
    32.             {
    33.                 $p_str[] = '<td style="padding:3px;"><a href="'.HTTP.DOMAIN.PATH.$location.'&p='.$c_page.SID.'">'.$c_page.'</a></td><td>&nbsp;</td>';
    34.             }
    35.  
    36.             if($page <= ($p_num - 3))
    37.             {
    38.                 $p_str[] = '<td style="padding:3px; background-color:#fdd3d3; border:#adadad solid 1px;"><b>'.$page.'</b></td><td>&nbsp;</td>';
    39.             }
    40.  
    41.             if(($c_page = $page + 1) <= ($p_num - 3))
    42.             {
    43.                 $p_str[] = '<td style="padding:3px;"><a href="'.HTTP.DOMAIN.PATH.$location.'&p='.$c_page.SID.'">'.$c_page.'</a></td><td>&nbsp;</td>';
    44.             }
    45.         }
    46.  
    47.         $p_str[] = '<td>...</td><td>&nbsp;</td>';
    48.  
    49.         if($page == ($c_page = $p_num - 2) and $p_num > 5)
    50.         {
    51.             $p_str[] = '<td style="padding:3px; background-color:#fdd3d3; border:#adadad solid 1px;"><b>'.$c_page.'</b></td><td>&nbsp;</td>';
    52.         }
    53.         elseif($p_num > 5)
    54.         {
    55.             $p_str[] = '<td style="padding:3px;"><a href="'.HTTP.DOMAIN.PATH.$location.'&p='.$c_page.SID.'">'.$c_page.'</a></td><td>&nbsp;</td>';
    56.         }
    57.  
    58.         if($page == ($c_page = $p_num - 1) and $p_num > 4)
    59.         {
    60.             $p_str[] = '<td style="padding:3px; background-color:#fdd3d3; border:#adadad solid 1px;"><b>'.$c_page.'</b></td><td>&nbsp;</td>';
    61.         }
    62.         elseif($p_num > 4)
    63.         {
    64.             $p_str[] = '<td style="padding:3px;"><a href="'.HTTP.DOMAIN.PATH.$location.'&p='.$c_page.SID.'">'.$c_page.'</a></td><td>&nbsp;</td>';
    65.         }
    66.  
    67.         if($page == $p_num and $p_num > 3)
    68.         {
    69.             $p_str[] = '<td style="padding:3px; background-color:#fdd3d3; border:#adadad solid 1px;"><b>'.$p_num.'</b></td><td>&nbsp;</td>';
    70.         }
    71.         elseif($p_num > 3)
    72.         {
    73.             $p_str[] = '<td style="padding:3px;"><a href="'.HTTP.DOMAIN.PATH.$location.'&p='.$p_num.SID.'">'.$p_num.'</a></td><td>&nbsp;</td>';
    74.         }
    75.  
    76.     }
    77.  
    78.     $p_str[] = '</tr></table>';
    79.  
    80.     return implode('', $p_str);
    81. }
     
  14. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    PHP:
    1.  
    2. <?php
    3.     //Вывод бара навигации << 1 2 3 >>
    4.     $result = $mysqli->query('SELECT COUNT(`id`) FROM `photos` WHERE `gall_id`='.$id)
    5.                                         or mysqdie($mysqli->errno.'@'.$mysqli->error, $_POST["section"]);
    6.     $maxid = $result->fetch_array(MYSQLI_NUM);
    7.     $result->close();
    8.     if ($maxid[0] > 20) {
    9.         $mtxt .= '<div class="line"></div>';
    10.         $firstlink = ($page > 1) ? '<a onClick="newContent(\'news&page=0\')" title="К первой странице"><<</a>  ' : null;
    11.         $pages = floor($maxid[0]/20);
    12.         $backlink = ($page > 0) ? ' <a onClick="newContent(\'news&page='.($page-1).'\')">'.($page+1).'</a> ' : null;
    13.         $thislink = $page+1;
    14.         $nextlink = (($page+1) <= $pages) ? ' <a onClick="newContent(\'news&page='.($page+1).'\')">'.($page+2).'</a> ' : null;
    15.         $lastlink = (($page+2) <= $pages) ? '  <a onClick="newContent(\'news&page='.$pages.'\')" title="К последней странице">>></a>' : null;
    16.         $mtxt .= '<div class="linkbar">'.$firstlink . $backlink . $thislink . $nextlink . $lastlink.'</div>';
    17.     }
    18.  
    19. ?>
    20.  
    20 редисок на страницу
    Вид бара такой:
    << 3 4 5 >>

    Только спаны надо заменить линками
     
  15. EvelRus

    EvelRus Активный пользователь

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    RomanBush
    DВотстраницы только циклом и делать :)