[英]How can I pass the correct variables in a URL in PHP for my paging?
我正在用PHP分页
这是我到目前为止基于@的链接的内容
http://domain.com/test/paging/index.php?var=cool&var2=coo2l&page=1
$selfurl = "http://".$_SERVER['SERVER_NAME'].dirname($_SERVER['PHP_SELF'])."";
这将创建以下内容: http : //domain.com/test/paging/
$qry_str = $_SERVER['argv'][0];
这将创建以下内容: var = cool&var2 = coo2l&page = 1
因此,下面所有这些链接都将通过我的分页链接传递;
http://domain.com/test/paging/?page=1
http://domain.com/test/paging/?var=coo2l&page=1 http://domain.com/test/paging/?var=cool&var2=coo2l&page=1
这是问题,下面是
我的下一个和上一个链接的示例,它有效
但问题是我去了
第一页,它将继续添加&page = THE-NUMBER-HERE,所以当您进入第3页时
就像
&页= THE-NUMBER-HERE&页= THE-NUMBER-HERE&页= THE-NUMBER-该处
代替
&页= THE-NUMBER-该处
链接;
<a href="<?PHP echo $selfurl;?>/?<?PHP echo $qry_str;?>&page=<?PHP echo $start-$pagesize;?>" class="bluelinkbold">Next</a> <a href="<?PHP echo $selfurl;?>/?<?PHP echo $qry_str;?>&page=<?PHP echo $start-$pagesize;?>" class="bluelinkbold" >Previous</a>
这很简单:
使用preg_replace从$ _SERVER ['argv'] [0]删除现有的页面变量,然后添加新的:
$ url_without_page_var = preg_replace函数( '/页=(\\ d +)/ I', '',$ _ SERVER [ '的argv'] [0]);
在id变量后传递页码时,我遇到了类似的问题。
mysite.php?id = 16&page = 1&page = 2&page = 1依此类推...受到Sergei的启发,我使用PHP_SELF删除了现有变量,然后重新加载我的ID并同时获得了新页面。
href="' . $_SERVER['PHP_SELF'] .'?id='. $row['id'] . '&page=' . $pages->next . '">Next
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.