簡體   English   中英

php處理分頁$ _GET請求超出限制

[英]php handling pagination $_GET requests past limit

我有一個模板頁面,該頁面通過$_GET請求對結果進行分頁。

如果用戶訪問的頁面超過了可用結果的總數,該如何處理$_GET錯誤?

我想到了以下解決方案,但不確定哪一個是理想的選擇:

  • 404-顯示404錯誤消息
  • 301/2重定向回結果的最后一個可用頁面
  • 更改數據請求以顯示最后可用的結果批次(而非重定向)
  • 301/2重定向回到第一頁
  • 只需顯示“無結果”消息(而不是重定向)

我需要考慮的是,結果總數可能會隨時間增加或減少。 含義my-page.php?p=3可能會或可能不會顯示結果。

我也想知道是否我需要考慮用戶或漫游器是否將$_GET模板散布到任何頁面編號my-page.php?p=9999999 ,還是我對此是否考慮過度?

謝謝

機器人將成為機器人。 默認情況下,將所有用戶輸入視為敵對行為,如果查詢結果有效,則將其視為獎勵。 如果有人要求這么高的偏移量,您將不會得到任何結果,因此它不是404,而只是一個否則為空的列表上的“上一頁”鏈接。

不要通過嘗試重定向來獲得全部聰明。 堅持“垃圾進,垃圾出”的原則。

查看它如何在其他站點上工作以進行比較。 大多數只顯示一個空列表,並帶有轉到第1頁的上一頁按鈕。 他們輸入一些不可思議的數字或page=ham+sandwich並不是您的錯。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM