PHP网页设计例子:用PHP3完成MySQL数据的分页显示
会MYSQL吗?会,我会把我的信息在数据库里插入删除啦mysql|分页|数据|显示 建表及生成测试数据(mysql.sql):create table pagetest(
id int unsigned not null primary key auto_increment,
name text not null
);
insert into pagetest(name) values('您好,伴侣,这是分页测试数据!');
insert into pagetest(name) values('第2条');
insert into pagetest(name) values('第3条');
insert into pagetest(name) values('第4条');
insert into pagetest(name) values('第5条');
insert into pagetest(name) values('第6条');
insert into pagetest(name) values('第7条');
insert into pagetest(name) values('第8条');
insert into pagetest(name) values('第9条');
insert into pagetest(name) values('第10条');
insert into pagetest(name) values('第11条');
insert into pagetest(name) values('第12条');
insert into pagetest(name) values('第13条');
显示法式(mysql.php3):
<?
$pagesize = 2;//每页显示2笔记录
$server = mysql_pconnect("localhost","test","test") or die("没法毗连到localhost主机上的MySQL数据库办事器!");//以test账号、test暗码毗连localhost主机上的MySQL数据库
$db = mysql_select_db("test") or die("没法毗连到test数据库!");
$sql = "select count(*) as total from pagetest";//生成查询纪录数的SQL语句
$rst = mysql_query($sql) or die("没法履行SQL语句:$sql !");//查询纪录数
$row = mysql_fetch_array($rst) or die("没有更多的纪录!");//掏出一笔记录
$rowcount = $row["total"];//掏出纪录数
mysql_free_result($rst) or die("没法释放result资本!");//释放result资本
$pagecount = bcdiv($rowcount+$pagesize-1,$pagesize,0);//算出总共有几页
if(!isset($pageno)) $pageno = 1;//在没有设置pageno时,缺省为显示第1页
if($pageno<1) $pageno = 1;//若pageno比1小,则把它设置为1
if($pageno>$pagecount) $pageno = $pagecount;//若pageno比总共的页数大,则把它设置为最初一页
if($pageno>0){
$href = eregi_replace("%2f","/",urlencode($PHP_SELF));//把$PHP_SELF转换为可以在URL上利用的字符串,如许的话就能够处置中文目次或中文文件名
if($pageno>1){//显示上一页的裢接
echo '<a href="' . $href . '?pageno=' . ($pageno-1) . '">上一页</a>';
}
else{
echo '上一页';
}
for($i=1;$i<$pageno;$i++){
echo '<a href="' . $href . '?pageno=' . $i . '">' . $i . '</a>';
}
echo $pageno . '';
for($i++;$i<=$pagecount;$i++){
echo '<a href="' . $href . '?pageno=' . $i . '">' . $i . '</a>';
}
if($pageno<$pagecount){//显示下一页的裢接
echo '<a href="' . $href . '?pageno=' . ($pageno+1) . '">下一页</a>';
}
else{
echo '下一页';
}
$offset = ($pageno-1) * $pagesize;//算出本页第一笔记录在全部表中的地位(第一笔记录为0)
$sql = "select * from pagetest LIMIT $offset,$pagesize";//生成查询本页数据的SQL语句
$rst = mysql_query($sql);//查询本页数据
$num_fields = mysql_num_fields($rst);//获得字段总数
$i = 0;
while($i<$num_fields){//获得一切字段的名字
$fields[$i] = mysql_field_name($rst,$i);//获得第i+1个字段的名字
$i++;
}
echo '<table border="1" cellspacing="0" cellpadding="0">';//入手下手输入表格
echo '<tr>';
reset($fields);
while(list(,$field_name)=each($fields)){//显示字段称号
echo "<th>$field_name</th>";
}
echo '</tr>';
while($row=mysql_fetch_array($rst)){//显示本页数据
echo '<tr>';
reset($fields);
while(list(,$field_name)=each($fields)){//显示每一个字段的值
$field_value = $row[$field_name];
if($field_value==""){
echo '<td> </td>';
}
else{
echo "<td>$field_value</td>";
}
}
echo '</tr>';
}
echo '</table>';//表格输入停止
mysql_free_result($rst) or die("没法释放result资本!");//释放result资本
}
else{
echo "今朝该表中没有任何数据!";
}
mysql_close($server) or die("没法与办事器断开毗连!");//断开毗连并释放资本
?>
如果不会怎么办,我的视频教程里有个最简单的留言板 最开始离不开模仿, 要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。 如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域, 我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。 对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。 微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox支持的不是很好,所以能少用还是少用的好。 首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。 其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎 php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会) 个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。 因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax 为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。 建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。 这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。 说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。 本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。 多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。 有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。 php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。 首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
页:
[1]