php使用ADODB链接mysql分页问题

Crazywa 2010-04-06 12:59:00
我是做asp的,在自学php
我使用的adodb链接的mysql数据库 但是不会分页,希望有会的高手帮忙指点下
我想用adodb读取数据 然后用table输出 分页显示
哪位高手能帮下忙
或者哪位高手有会使用php内置mysql链接函数写出来分页显示代码的帮忙指点一下
不胜感激!
...全文
179 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Crazywa 2010-04-08
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 jnkc 的回复:]
adodb中用PageExecute函数得到记录集,然后$rs->_currentPage可得当前页码,$rs->_lastPageNo可得总页数,$rs->_maxRecordCount得到记录总数。
[/Quote]
谢谢。
江南昆虫 2010-04-07
  • 打赏
  • 举报
回复
adodb中用PageExecute函数得到记录集,然后$rs->_currentPage可得当前页码,$rs->_lastPageNo可得总页数,$rs->_maxRecordCount得到记录总数。
Crazywa 2010-04-06
  • 打赏
  • 举报
回复
谢谢 谢谢楼上诸位
php有一个adodb函数库的 不过要自己下载 其中的一些方法跟asp的adodb是不一样的
到现在也没有解决adodb的分页问题
所以我自己用php内置的mysql链接函数写了一段分页代码 代码如下 希望能对跟我一样的php新手有所帮助
<?php
session_start();
//mysql数据库链接
//设置连接字符串
$db = array(
"host"=>"127.0.0.1:3306",
"name"=>"root",
"pwd"=>"",
"db"=>"test"
);
//创建数据库链接对象
$conn = mysql_connect($db["host"],$db["name"],$db["pwd"]) or die("链接数据库失败!");
//选择数据库
mysql_select_db($db["db"],$conn) or die("选择数据库时出错!");
//设置字符集
mysql_query("SET NAMES UTF8") or die("设置字符集时出错");
//分页代码开始{
$sql = "select count(*) from Andy";
$result = mysql_query($sql);
$count = mysql_fetch_array($result);
$pagesize = 3;
$maxpage = intval($count[0]/$pagesize);
if ($count[0]%$pagesize != 0) {
$maxpage = $maxpage + 1;
}
//echo "$maxpage<br />";
$cur_page = 1;
if (isset($_GET["cur_page"])&&$_GET["cur_page"]!="") {
if ($_GET["cur_page"]<1) {
$cur_page = 1;
}elseif ($_GET["cur_page"]>$maxpage){
$cur_page = $maxpage;
}else {
$cur_page = $_GET["cur_page"];
}
}
$start_position = ($cur_page-1)*$pagesize;
//分页代码结束}
//设置sql语句
$sql="select * from Andy limit $start_position,$pagesize";
//使用mysql_query()查询语句
$result = mysql_query($sql);
/* 以数组的形式处理数据
while ($row = mysql_fetch_array($result)) {
echo $row[0]."++".$row[1]."<br />";
}
*/
//以 键名/值 的方式处理数据
while ($row = mysql_fetch_assoc($result)){
echo $row["id"]."=>".$row["name"]."<br />";
}
if ($cur_page==1) {
echo "首 页  上一页";
}else{
echo "<a href=\"?cur_page=1\">首 页</a>  <a href=\"?cur_page=".($cur_page-1)."\">上一页</a>";
}
echo "  ";
if ($cur_page==$maxpage) {
echo "下一页  末页";
}else{
echo "<a href=\"?cur_page=".($cur_page+1)."\">下一页</a>  <a href=\"?cur_page=".($maxpage)."\">末 页</a>";
}
//使用完释放资源
mysql_free_result($result);
//关闭数据库链接
mysql_close($conn)
?>
YANGSHENGJIANGPASS 2010-04-06
  • 打赏
  • 举报
回复
<?php

function pageft($totle, $displaypg = 20, $url = '') {

global $page, $firstcount, $pagenav, $_SERVER;

$GLOBALS["displaypg"] = $displaypg;

if (!$page)
$page = 1;
if (!$url) {
$url = $_SERVER["REQUEST_URI"];
}

//URL分析:
$parse_url = @parse_url($url);
$url_query = $parse_url["query"]; //单独取出URL的查询字串
if ($url_query) {
$url_query = ereg_replace("(^|&)page=$page", "", $url_query);
$url = str_replace($parse_url["query"], $url_query, $url);
if ($url_query)
$url .= "&page";
else
$url .= "page";
} else {
$url=$_SERVER['PHP_SELF'];
$url .= "?page";
}
$lastpg = ceil($totle / $displaypg); //最后页,也是总页数
if($_GET[page]){
$page=$_GET[page];
}
$page = min($lastpg, $page);
$prepg = $page -1; //上一页
$nextpg = ($page == $lastpg ? 0 : $page +1); //下一页
$firstcount = ($page -1) * $displaypg;

//开始分页导航条代码:
$pagenav = "显示第 <B>" . ($totle ? ($firstcount +1) : 0) . "</B>-<B>" . min($firstcount + $displaypg, $totle) . "</B> 条记录,共 $totle 条记录";

//如果只有一页则跳出函数:
if ($lastpg <= 1)
return false;

$pagenav .= " <a href='$url=1'>首页</a> ";
if ($prepg)
$pagenav .= " <a href='$url=$prepg'>前页</a> ";
else
$pagenav .= " 前页 ";
if ($nextpg)
$pagenav .= " <a href='$url=$nextpg'>后页</a> ";
else
$pagenav .= " 后页 ";
$pagenav .= " <a href='$url=$lastpg'>尾页</a> ";

//下拉跳转列表,循环列出所有页码:
$pagenav .= " 到第 <select name='topage' size='1' onchange='window.location=\"$url=\"+this.value'>\n";
for ($i = 1; $i <= $lastpg; $i++) {
if ($i == $page)
$pagenav .= "<option value='".$i."' selected>".$i."</option>\n";
else
$pagenav .= "<option value='".$i."'>".$i."</option>\n";
}
$pagenav .= "</select> 页,共 $lastpg 页";
}

?>
自己去看看吧! 也不知是不是你需要的。。。。。。。。。。。
  • 打赏
  • 举报
回复
mysql的连接类里面没有分页的函数。ADODB这个是ASP常用的术语,但是在PHP中一般不会这么写。

下载discuz的程序文件,打开里面的include/db_mysql.class.php,这个里面是链接库,
很简单的使用方法。

分页需要分页函数,uchome里面有一个分页函数在 source/function_common.php 里面,
可以自己写一个分页函数。

function fenye($fenyeurl,$page,$totalnum,$numperpage){
//计算出分页的HTML代码
$html = '';
for(;;;){
$html .= '';
}
return $html;
}

hqs19821108 2010-04-06
  • 打赏
  • 举报
回复
帮你顶一下

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧