php
  • foreach
  • navigation
  • 2012-01-30 44 views 0 likes 
    0

    創建頁面導航,使用我有一些問題想要使用PHP創建頁面導航PHP

    我有變量,名爲$您做生意,我可以通過使用下一個先前鏈接-1或+1使用導航。

    例如。

    echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=".($PageNo+1)."'>Next</a>"; 
    echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=".($PageNo-1)."'>Prev</a>"; 
    

    但藏漢,因爲這是要顯示直接鏈接到的網頁,所以我有像這樣

    上一頁1 2 3 4 5下一頁

    echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=".($PageNo+1)."'>Next</a>"; 
    echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=1'>1</a>"; 
    echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=2'>2</a>"; 
    echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=3'>3</a>"; 
    echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=4'>4</a>"; 
    echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=".($PageNo-1)."'>Prev</a>"; 
    

    如果我知道總數導航的產品頁面是4你會如何產生鏈接給

    echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=1'>1</a>"; 
    echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=2'>2</a>"; 
    echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=3'>3</a>"; 
    echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=4'>4</a>"; 
    

    任何幫助將是偉大的。

    +1

    您有語法錯誤。在包含靜態數字(1-4)的所有鏈接之後,刪除雙引號(「)。基本上結束了你的字符串,但你不應該。 – 2012-01-30 14:17:02

    +0

    是的,謝謝,這是一個錯字,現在已更正。 – 2012-01-30 14:37:21

    回答

    1

    你需要做的數學,然後一點點的代碼。

    1. 計算你需要的數量OS頁(基於每頁面的數量OS記錄和記錄)

    2. 只需使用一個for循環做這樣(未測試)鏈接:

      爲($ page = 1; $ page < = $ total_pg; ++ $ page){ echo「$ page」; }

    屆時,product.php頁讀取數和顯示的記錄

    +0

    我不能讓代碼塊工作:(:( – 2012-01-30 14:21:44

    1

    這是一個簡單for loop子集,這是很基本的東西,這就是在那裏所有的編程語言(就像if/else語句和while循環等)。假設總頁數是4,那麼你設置一個隨機變量,比如說$ p(對於頁面)最初爲它的起始值1,然後繼續循環,每次增加$ p直到$ p爲止4.會導致在這:

    // Previous link before the numbers (unless we are on page 1) 
    if($PageNo > 1) { 
        echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=".($PageNo-1)."'>Prev</a>"; 
    } 
    
    // We loop over all the numbered pages here 
    for($p = 1;$p <= 4;$p++) { 
        echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=" . $p . "'>" . $p . "</a>"; 
    } 
    
    // Next link goes after the numbers (if there are any pages left) 
    if(($PageNo + 1) <= $p) { 
        echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=".($PageNo+1)."'>Next</a>"; 
    } 
    
    2

    如何嘗試這一個?

    // $total_num : total number of the pages 
    foreach (range(1, $total_num) as $p) { 
        echo "<a href='http://".$_SERVER["HTTP_HOST"]."/product.php?page=$p"'>$p</a>"; 
    } 
    
    相關問題