PHP分页原理
<?php/***《PHP100视频教程》*/include("conn.php");$pagesize=5;$url=$_SERVER["REQUEST_URI"];$...
<?php
/**
* 《PHP100视频教程》
*/
include("conn.php");
$pagesize=5;
$url=$_SERVER["REQUEST_URI"];
$url=parse_url($url);
$url=$url[path];
$numq=mysql_query("SELECT * FROM `test`");
$num = mysql_num_rows($numq);
if($_GET[page]){
$pageval=$_GET[page];
$page=($pageval-1)*$pagesize;
$page.=',';
}
if($num > $pagesize){
if($pageval<=1)$pageval=1;
echo "共 $num 条".
" <a href=$url?page=".($pageval-1).">上一页</a> <a href=$url?page=".($pageval+1).">下一页</a>";
}
echo $SQL="SELECT * FROM `test` limit $page $pagesize ";
$query=mysql_query($SQL);
while($row=mysql_fetch_array($query)){
echo "<hr><b>".$row[name]." | ".$row[sex];
}
?>
$page.=',';是什么意思?
if($pageval<=1)$pageval=1;是什么意思,为什么药赋予值1,那么岂不是每次$pageval的值都是1? 求大侠给小弟解释一下,感激不尽! 展开
/**
* 《PHP100视频教程》
*/
include("conn.php");
$pagesize=5;
$url=$_SERVER["REQUEST_URI"];
$url=parse_url($url);
$url=$url[path];
$numq=mysql_query("SELECT * FROM `test`");
$num = mysql_num_rows($numq);
if($_GET[page]){
$pageval=$_GET[page];
$page=($pageval-1)*$pagesize;
$page.=',';
}
if($num > $pagesize){
if($pageval<=1)$pageval=1;
echo "共 $num 条".
" <a href=$url?page=".($pageval-1).">上一页</a> <a href=$url?page=".($pageval+1).">下一页</a>";
}
echo $SQL="SELECT * FROM `test` limit $page $pagesize ";
$query=mysql_query($SQL);
while($row=mysql_fetch_array($query)){
echo "<hr><b>".$row[name]." | ".$row[sex];
}
?>
$page.=',';是什么意思?
if($pageval<=1)$pageval=1;是什么意思,为什么药赋予值1,那么岂不是每次$pageval的值都是1? 求大侠给小弟解释一下,感激不尽! 展开
1个回答
展开全部
$page.=','; 注意这里用的是 .= 符号也就是说跟后面这句话相同$page = $page . ',';
if($pageval<=1)$pageval=1; 就是简写而已,这样写就不写{}了也就是说,如果传过来的值不够一页就设定为一页
if($pageval<=1)$pageval=1; 就是简写而已,这样写就不写{}了也就是说,如果传过来的值不够一页就设定为一页
更多追问追答
追问
谢谢你的及时回答,为什么两个if语句里的$pageval可以通用呢 没定义他们是全局变量啊
$page = $page . ',';
if语句里写出这个事起什么作用 和后面的 echo $SQL="SELECT * FROM `test` limit $page $pagesize ";
有关系么 不好意思 真的不明白写$page.=',';是为了什么
追答
$pageval 在if外已经定义了,所以可以在两个if内找的到。
也就是:
if($pageval<=1){
$pageval=1;
}
这里的$page = $page . ',';
是要把每一个要求的文章拿出来,也就是相当于一个一个加起来
$pagesize已经定义为5,所以limit的上限是5
$page是不定的,比如是1
echo出来倒是没有什么必要,而且很危险
那么 $SQL="SELECT * FROM `test` limit $page $pagesize "
已是就很明白了,就是选取设置的每个区间数量的文章
整体来说,这个代码质量不高。不能直接使用
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询