已有40人关注
PHP网络编程自学手册关于分页显示的问题
发表在PHP图书答疑 2009-10-19
是否精华
版块置顶:
Mr\14\sl\011中的分页显示无法运行代码如下:
<?php

$pagesize = 1 ; //每页显示记录数
$sqlstr = "select * from tb_mrbook order by id";
$total = mysql_query($sqlstr,$conn);
$totalNum = mysql_num_rows($total); //总记录数
$pagecount = (int)(($totalNum - 1) / $pagesize) + 1; //总页数

(!$absolutepage)?($absolutepage = 1):$absolutepage; //当前显示页数
($absolutepage <= $pagecount)?$absolutepage:($absolutepage = $pagecount);
$f_pageNum = $pagesize * ($absolutepage - 1); //当前页的第一条记录


$sqlstr1 = $sqlstr." limit ".$f_pageNum.",".$pagesize;
$result = mysql_query($sqlstr1,$conn);

while ($rows = mysql_fetch_row($result)){
echo "<tr><td height='25' align='center' class='m_td'>";
echo "<input type=checkbox name='chk[]' id='chk' value=".$rows[0].">";
echo "</td>";
for($i = 0; $i < count($rows); $i++){
echo "<td height='25' align='center' class='m_td'>".$rows[$i]."</td>";
}
echo "<td class='m_td'><a href='#'>修改</a>/<a href='#'>删除</a></td>";
echo "</tr>";
}
?>
<tr>
<td height="25" colspan="7" class="m_td" align="left">
<a href="" onClick="return chek();">全部选择/取消</a>&nbsp;&nbsp;
<input type="hidden" name="action" value="delall"><input type="submit" value="删除选择" onclick = 'return false'>&nbsp;&nbsp;
共<?php echo $totalNum ?>本图书,第<?php echo $absolutepage ?>页/共<?php echo $pagecount ?>页:<a href="?absolutepage=<?php echo ($absolutepage > 1)?($absolutepage - 1):1;?>">上一页</a>&nbsp;<a href="?absolutepage=<?php echo ($absolutepage < ($pagecount-1))?($absolutepage+1):$pagecount;?>">下一页</a></td>
</tr>
</table>
</form>
<?php
在浏览器中只显示第一页,单击“下一页”时页面没有变化,其他正常。请老师给分析一下是不是代码有问题?
谢谢了!
分享到:
精彩评论 1
346827366
学分:0 LV1
2009-10-20
沙发
您好:

    您出现的问题应该是注册变量的问题,您环境中的注册变量没有开启,从而导致获取不大变量值。

也就是需要将php.ini文件中的,register_globals选项项,将它的值设置为ON,保存后重新启动Apache服务器。


这是我们编写时出现的一个问题,因为在编写程序时开启了注册变量,所以在获取变量POST或者GET方法提交的值,可以直接使用变量名。
例如:如果是通过get方法提交的值,那么正确的获取方法应该是$_GET[变量名],而由于开启了注册变量则可以使用"$变量名"的这种形式来获取。
   而本书中就是出现的这个问题,有部分程序直接使用了"$变量名"这种格式来获取POST或者GET方法提交的值;
所以在运行本书的实例时,需要开启php.ini文件中的注册变量,即register_globals选项,将它的值设置为ON,保存后重新启动Apache服务器。

    注意,这是本书在编写过程中,我们出现的一个问题,建议读者在自己编写程序的过程中,不要这样使用,因为如果开启注册变量就存在安全隐患,一定要使用$_GET[]或者$_POST[]的格式来获取post或者get方法提交的值。

首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照