Heim  >  Artikel  >  Backend-Entwicklung  >  Wie zeige ich den Baidu-Paging-Effekt an (unter der Suchseite)?

Wie zeige ich den Baidu-Paging-Effekt an (unter der Suchseite)?

黄舟
黄舟Original
2017-07-20 09:40:503325Durchsuche

1: Datenerfassung

$pageIndex = $_GET['p']?$_GET['p']:'1';//当前页码    
$perpage = 10;//每页显示多少数量,和页码无关    
$count = 121;//总数是多少,//和页码无关    
$flag =9;//显示页码个数    
$pageCount = ceil($count/$perpage); //总的页码个数
   $pagesInRange = $this->page_show($pageIndex, $pageCount, $flag);//显示的页码数组

Hinweis: page_show ist eine Funktion, die zum Erstellen eines Arrays angezeigter Seitenzahldaten verwendet wird, wie unten gezeigt.

public function page_show2($pageIndex, $pageCount, $flag){
  if($flag > $pageCount){             
  $flag = ( $pageCount);           }
  if($flag%2){            
  $aa = floor($flag/2);            
  $lowerBound = $pageIndex - $aa;        
  $upperBound = $pageIndex + $aa;          
  }else{
           $aa = floor($flag/2);            
           $lowerBound = $pageIndex - $aa;        
           $upperBound = $pageIndex + $aa -1;          
           }
     if( $lowerBound< 1){        
     $offset = 0-$lowerBound +1;        
     $lowerBound =1;        
     $upperBound = $upperBound + $offset;      
     }
     if($upperBound> $pageCount){
       $up = $upperBound;        
       $upperBound = $pageCount;
       $offset = $up-$pageCount;        
       $lowerBound = $lowerBound - $offset;      
       }
     $data = array();      
     for ($i=($lowerBound); $i <= ($upperBound); $i++) {         
     $data[] = $i;      
     }
     return $data;     
     }

Nachdem die Daten erstellt wurden, müssen Sie anhand einiger Daten beurteilen, welche Seitenzahlen angezeigt werden sollen.

Die Daten werden auf der HTML-Seite wie folgt verwendet: (Hinweis: Die Variablen mit $this-> sind die zuvor gesammelten Variablen. Sie werden auf der HTML-Seite nur anders geschrieben. Im Grunde sind sie so geschrieben Wenn kein Framework vorhanden ist, müssen Sie die folgenden Daten selbst wiederholen und das Zeichen $this-> in der Variablen entfernen.

<?php if ($pageCount > 1): ?>
<?php if (($pageIndex > 1)): ?>
<span class="page_up"><a href="<?php echo $link . &#39;&p=&#39; . ($pageIndex-1) ?>">上一页</a></span>
<?php endif; ?>
<?php foreach($pagesInRange as $page) : ?>
<?php if ($page == $pageIndex): ?>
<span class="curr onthis"><?php echo $page;?></span>
<?php else : ?>
<span><a href="<?php echo $link . &#39;&p=&#39; . $page ?>"><?php echo $page;?></a></span>
<?php endif;?>
<?php endforeach;?>
<?php if (($pageIndex< $pageCount)): ?>
<span class="page_next"><a href="<?php echo $link . &#39;&p=&#39; . ($pageIndex +1) ?>">下一页</a></span>
<?php endif; ?>
<?php endif;?>

Der Effekt ist wie folgt und die Baidu-Suchseite unten. Die Seitenaufteilung ist weitgehend gleich, Sie müssen den Stil selbst ändern.

Das obige ist der detaillierte Inhalt vonWie zeige ich den Baidu-Paging-Effekt an (unter der Suchseite)?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn