如何使用$_SERVER [‘QUERY_STRING’]和分页?
当我的表被这个链接排序时:
<a href="'.$_SERVER['PHP_SELF'].'?sort_name=name&sort=asc" title="'.$lang['sorteer_asc'].'"></a>
我的网址变成:relation.PHP?sort_name = adres& sort = asc
我使用分页链接:
echo '<a href="'.$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'].'&page='.$i.'">'.$i.'</a> ';
而url变成:relation.PHP?sort_name = adres& sort = asc& page = 2
到目前为止这么好,但是当浏览到其他页面时,可以只要:
relation.PHP sort_name = ADRES&安培;排序= ASC&安培;页= 2及页= 3及页= 14&安培;页= 23&安培;页= 27
由于$_SERVER [‘QUERY_STRING’],该年龄不断出现,那么如何清理我的网址,只保留最后一页??sort_name = adres& sort = asc.
还是你建议一个其他的订购和分页解决方案?
而不是重新使用QUERY_STRING,您应该重新组合它与
http_build_query()
.
// Merge $_GET with new parameter $QS = http_build_query(array_merge($_GET,array("page"=>2))); // You should apply htmlspecialchars() on the path prior outputting: echo "<a href='" . htmlspecialchars("$_SERVER[PHP_SELF]?$QS") . "'> $i </a>";
因此,您将包含所有当前的$_GET参数,但可以使用新值添加或替换条目.并确保每次只显示一次.