请教高手PHP中关于记录集的问题

我在PHP中做了一个SQL Server 数据库的分页程序(数据表有1800多条记录,每页20条,分了90多页),现在能够分页,页数、每页记录数、总记录数、翻页等等都非常正常,但现在的问题是显示的记录都是数据库的第一条记录,不能移动记录集指针,我是使用for实现分页的:

第一种方法是移动记录集指针,代码:$rs->MoveNext(); 或 $rs->movenext;都有问题,提示错误:Fatal error: Call to a member function MoveNext() on a non-object in

第二种方法是创建数组,代码:$BT($p)=$rs['字段名']; $BT是数组,$p是for循环中的循环变量,但是提示错误:Fatal error: Can't use function return value in write context in

如果使用 while 就会显示全部记录。

请高手回答:不论使用那种方法,只要能够正常显示数据就可以。本人刚刚接触php,不太了解,有求大侠了。如果解决送100分。
如果不能移动指针,用数组实现是最理想的了。在php中创建动态数组,怎么创建?怎么赋值?

请指教!在线等你的回答!谢谢!

$pageSize=20;//设置每页显示条数
$rs=mysql_query("select count(*) from msgbo");//取得记录总数,计算总页数用$myrow=mysql_fetch_array($rs);
$numrows=$myrow[0];//计算总记录

$pages=intval($numrows/$pageSize);
if ($numrows%$pageSize)$pages++;//设置页数
if (isset($_GET['page'])) {
$page=intval($_GET['page']);
}
else {
$page=1;
}
$offset=$pageSize*($page-1);
$sql="select id,username,ip,url,msg from msgbo order by timee desc limit $offset,$pageSize ";
//这句查询 限制查询条数和指针移动。
//$sql="select * from msgbo limit $offset,$pageSize";
$result=mysql_query($sql);
$num=mysql_num_rows($result);//行数
if($num>0){
while($row = mysql_fetch_array($result))//数组
{
echo $row[0];
//继续输出
}追问

谢谢你!但是我希望的不是重新做分页,而是在循环中创建动态数组,并给他赋值。
分页功能已经实现了,请能够回答我需要的问题,可能一二句就能解决问题。

这是我的代码:
while( $rs = mssql_fetch_array( $strSQL)){
$BT($k)=$rs['字段名'];
$k+=1;
}

问题自己解决了,非常简单。丢失了一句。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-08-13
建议用adodb,一个开源的php类库,可以用来访问目前几乎所有的数据库

而且写法不会因为数据库不同而改变,都一样的,



这个是mssql的链接例子

code.initialization.html#connect_ex追问

对不起!我现在只想使用我的方法,对php的类库,不了解,而且我是一个英语文盲。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网