php数字分页类的代码

 更新时间:2016年11月25日 17:33  点击:1660
下面是一款php数字分页类的代码,己经封装好了的代码,需要的朋友可以参考使用一下。分页的主要原理就是获取当前页面,再判断一页多少条记录相除,得出总记录,就这么简单了。

function getnavhtml($pagenum,$pagesize,$rowcount,$navurl){
$pagecount = (int)($rowcount/$pagesize); //总页数
if ($rowcount % $pagesize >0){
$pagecount++;
}
if ($pagenum>$pagecount){
$pagenum = 1;
}
$firstnav = "<a href="{$navurl}page=1">首页</a> ";
$lastnav = "<a href="{$navurl}page={$pagecount}">尾页</a> ";
$prevnav="";
$nextnav="";
if ($pagenum>1){
$navpagenum = $pagenum-1;
$prevnav = "<a href="{$navurl}page={$navpagenum}">上一页</a> ";
}
if ($pagenum<$pagecount && $pagecount>1){
$navpagenum = $pagenum+1;
$nextnav = "<a href="{$navurl}page={$navpagenum}">下一页</a> ";
}
$amongnav="";

//关键循环

for ($i=1;$i<=5;$i++){
$navpagenum = $pagenum+ $i-3;
if ($navpagenum>0 && $navpagenum<=$pagecount){
$navcss教程 = $navpagenum == $pagenum?" class="hover"":"";
$amongnav.="<a href="{$navurl}page={$navpagenum}" $navcss>{$navpagenum}</a> ";
}
}
return $firstnav.$prevnav.$amongnav.$nextnav.$lastnav." ".$pagenum."/".$pagecount." 共有[".$rowcount."]条数据";
}
}

/**
* 获取页码导航html
* @param $pagenum:当前页码
* @param $pagesize:每页数量
* @param $rowcount:记录总数
* @param $navurl:链接页面url
*/

下面是一款完整的用户在注册前的ajax验证用户名的实现代码,只要按要求保存就可以了。

 

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
<title>ajax用户验证</title>
<style>
body {
 font: 12px , arial, helvetica, sans-serif; color: #808080
}
#reg{
 width: 600px;
 border: 1px dotted #336699;
}
td{font-size:12px;color:}
h1{
 height:35px;
 font-size:16px;
 color:#ffffff;
 background-color: #336699;
 line-height: 30px;
 padding-left:25px;
}

.anniu {
 border-right: #666666 1px solid; padding-right: 1px; border-top: #ffffff 1px solid; padding-left: 1px; font-size: 9pt; padding-bottom: 1px; border-left: #ffffff 1px solid; cursor: hand; color: #333333; padding-top: 1px; border-bottom: #666666 1px solid; font-family: "宋体"; height: 20px; background-color: #eeeeee
}
.framedivpass{
 
 border: 1px solid #6fbe44;
 padding: 2px;
 height: 100%;
 float: left;
}
.framedivwarn{
 
 border: 1px solid #ff0000;
 padding: 2px;
 height: 100%;
 float: left;
}
</style>
<script language="网页特效" type="text/javascript">
 var xmlhttp = false;
 try {
  xmlhttp = new activexobject("msxml2.xmlhttp");
 } catch (e) {
  try {
   xmlhttp = new activexobject("microsoft.xmlhttp");
  } catch (e2) {
   xmlhttp = false;
  }
 }
 if (!xmlhttp && typeof xmlhttprequest != 'undefined') {
  xmlhttp = new xmlhttprequest();
 }
 function ajax(data){ 
  xmlhttp.open("get","user_ck.php教程?username="+document.getelementbyid("username").value,true);
  xmlhttp.send(null);
     document.getelementbyid('username_notice').innerhtml = process_request;//显示状态
  xmlhttp.onreadystatechange=function(){
   if (4==xmlhttp.readystate){
    if (200==xmlhttp.status){
    var responsetext = xmlhttp.responsetext;
       if (responsetext=="true" ){
       ck_user("true");
          }
       else{
       ck_user("false");
       }
    }else{
     alert("发生错误!");
    }
   }
  }
 }
 function chkusername(obj){
      if (checks(obj.value)== false)
    {
   obj.classname = "framedivwarn";
   showinfo("username_notice",msg_un_format);
            change_submit("true");
    }
  else if(obj.value.length<1){
   obj.classname = "framedivwarn";
   showinfo("username_notice",msg_un_blank);
            change_submit("true");
  }

  else if(obj.value.length<3){
   obj.classname = "framedivwarn";
   showinfo("username_notice",username_shorter);
            change_submit("true");
  }
  else{
   //调用ajax函数,向服务器端发送查询
   ajax(obj.value);
  }   

 }

 

opendir() 函数打开一个目录句柄,可由 closedir(),readdir() 和 rewinddir() 使用。 若成功,则该函数返回一个目录流,否则返回 false 以及一个 error。可以通过在函数名前加上 \"@\" 来隐藏 error 的输出。

$dir = opendir("images");

//列出 images 目录中的文件
while (($file = readdir($dir)) !== false)
  {
  echo "filename: " . $file . "<br />";
  }
  closedir($dir);


// 看一下改装的目录浏览实现,使用表格浏览目录的结构

print("<table border="1">n");
// 创建表格的头
print("<tr><font color='red'>n");
print("<th>文件名</th>n");
print("<th>文件的大小</th>n");
print("</font></tr>n");
$mydirectory = opendir(".");  // 建立操作目录的句柄
// 读出目录中的每一个子项
while($entryname = readdir($mydirectory))//通过循环,访问目录的每一个文件
{
   print("<tr>");
   print("<td>$entryname</td>");
   print("<td align="right">");
   print(filesize($entryname));//返回文件大小
  print("</td>");
   print("</tr>n");
}
closedir($mydirectory);   // 关闭目录
print("</table>n");
php中自带的函数rmdir只能删除空目录,如果你要删除带有文件或有目录的目录,需要递归与unlink一起使用了,下面我们看看删除不是空目录的自定义函数。

//rmdir(dir,context) rmdir() 函数删除空的目录。

$path ='';
if( is_dir( $path ) )
{
 if( rmdir( $path ) )
 {
  echo '删除目录成功';
 }
}
else
{
 echo '不是目录';
}

/*
总结
   
*/
/**
 * 删除文件或文件夹(递归)
 * @param array $filelist
 * @param string $option
 * @param string $fileext 要删除的文件扩展名 格式:'html'
 * @return void
 */

 function rm($filelist, $option='r', $fileext = null, $if_rmdir = false) {
  if (!is_array($filelist)) {
   $filelist = explode('|', $filelist);
  }
  foreach ($filelist as $filename) {
   if (is_file($filename)) {
    if (empty($fileext)) {
     unlink($filename);
    } else {
     if (substr(strrchr($filename, '.'), 1 ) == $fileext){
      unlink($filename);
     }
    }
   } elseif (is_dir($filename)) {
    if (strpos($option, 'r')!==false) {
     $file_list_ = ls($filename);
     foreach ($file_list_ as $fi => $file) {
      $file_list_[$fi] = $filename . $file;
     }
     rm($file_list_, $option, $fileext);
    }
    if ($if_rmdir) {
     rmdir($filename);
    }
   }
  }
 }

//调用方法

利用fopen fread  fwrite fcolse打开文件形式

<?php
$fp = fopen ("templets.html","a");
if ($fp){
$fup = fread ($fp,filesize("templets.html"));
$fp2 = fopen ("html.shtml","w");
if ($fwrite ($fp2,$fup)){
$fclose ($fp);
$fcolse ($fp2);
die ("写入模板成功");
} else {
fclose ($fp);
die ("写入模板失败!");
}
}
?>

php读取文件,fread是用来读取用fopen打开的文件内容的,下面我们就来看看fread与gets 实例教程吧.

定义和用法
fread() 函数读取文件(可安全用于二进制文件)。

语法
fread(file,length)参数 描述
file 必需。规定要读取打开文件。
length 必需。规定要读取的最大字节数。

说明
fread() 从文件指针 file 读取最多 length 个字节。该函数在读取完最多 length 个字节数,或到达 eof 的时候,或(对于网络流)当一个包可用时,或(在打开用户空间流之后)已读取了 8192 个字节时就会停止读取文件,视乎先碰到哪种情况。

<?php
$file = fopen("test.txt","r");
fread($file,filesize("test.txt"));
fclose($file);
?>


更多详细内容请查看:http://www.111cn.net/phper/18/753bc9c01fa5a721a81c63887ddccb47.htm

缓存输出 ob_end_clean ob_start ob_get_length ob_get_contents函数

<?php
$s_fname = "93e.php";
$o_fname = "93e.htm";
ob_end_clean();
ob_start();
include($s_fname);
$length = ob_get_length();
$buffer = ob_get_contents();
$buffer = eregi_replace("r","",$buffer);
ob_end_clean();

$fp = fopen($o_fname,"w+");
fwrite($fp,$buffer);
fclose($fp);
?>


三个函数吧:"ob_start()、ob_end_clean()、ob_get_contents()"

ob_start():是打开缓冲区的,就是要把您需要生成的静态文件的内容缓存在这里;
ob_get_contents():是读出缓冲区里的内容,下面有代码为例;
ob_end_clean():这个比较重要,只有使用了这个函数后,缓冲区里的内容才会读取出来

更多详细内容请查看:http://www.111cn.net/phper/php-cy/35433.htm

[!--infotagslink--]

相关文章

  • php KindEditor文章内分页的实例方法

    我们这里介绍php与KindEditor编辑器使用时如何利用KindEditor编辑器的分页功能实现文章内容分页,KindEditor编辑器在我们点击分页时会插入代码,我们只要以它为分切符,就...2016-11-25
  • 金额阿拉伯数字转换为中文的存储过程

    Create Procedure AtoC @ChangeMoney Money as Set Nocount ON Declare @String1 char(20) Declare @String2 char(30) ...2016-11-25
  • c#中判断字符串是不是数字或字母的方法

    这篇文章介绍了C#判断字符串是否数字或字母的实例,有需要的朋友可以参考一下...2020-06-25
  • 自己动手写的jquery分页控件(非常简单实用)

    最近接了一个项目,其中有需求要用到jquery分页控件,上网也找到了需要分页控件,各种写法各种用法,都是很复杂,最终决定自己动手写一个jquery分页控件,全当是练练手了。写的不好,还请见谅,本分页控件在chrome测试过,其他的兼容性...2015-10-30
  • jquery实现的伪分页效果代码

    本文实例讲述了jquery实现的伪分页效果代码。分享给大家供大家参考,具体如下:这里介绍的jquery伪分页效果,在火狐下表现完美,IE全系列下有些问题,引入了jQuery1.7.2插件,代码里有丰富的注释,相信对学习jQuery有不小的帮助,期...2015-10-30
  • 金额阿拉伯数字转换为中文的自定义函数

    CREATE FUNCTION ChangeBigSmall (@ChangeMoney money) RETURNS VarChar(100) AS BEGIN Declare @String1 char(20) Declare @String2 char...2016-11-25
  • C#实现猜数字游戏

    这篇文章主要为大家详细介绍了C#实现猜数字游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-25
  • vue.js 表格分页ajax 异步加载数据

    Vue.js通过简洁的API提供高效的数据绑定和灵活的组件系统.这篇文章主要介绍了vue.js 表格分页ajax 异步加载数据的相关资料,需要的朋友可以参考下...2016-10-20
  • 安卓开发之设置密码只能输入字母和数字的组合

    设置登录密码我们一般会有限制的如由什么组合了,下面我们来看一篇关于安卓开发之设置密码只能输入字母和数字的组合方法,具体的细节如下所示。 无论是电脑还是手机...2016-09-20
  • php导出csv格式数据并将数字转换成文本的思路以及代码分享

    php导出csv格式数据实现:先定义一个字符串 存储内容,例如 $exportdata = '规则111,规则222,审222,规222,服2222,规则1,规则2,规则3,匹配字符,设置时间,有效期'."/n";然后对需要保存csv的数组进行foreach循环,例如复制代...2014-06-07
  • C#判断一个字符串是否是数字或者含有某个数字的方法

    这篇文章主要介绍了C#判断一个字符串是否是数字或者含有某个数字的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • Springboot如何使用mybatis实现拦截SQL分页

    这篇文章主要介绍了Springboot使用mybatis实现拦截SQL分页,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-06-19
  • PHP 一个完整的分页类(附源码)

    在php中要实现分页比起asp中要简单很多了,我们核心就是直接获取当前页面然后判断每页多少再到数据库中利用limit就可以实现分页查询了,下面我来详细介绍分页类实现程序...2016-11-25
  • php生成唯一数字id的方法汇总

    关于生成唯一数字ID的问题,是不是需要使用rand生成一个随机数,然后去数据库查询是否有这个数呢?感觉这样的话有点费时间,有没有其他方法呢?当然不是,其实有两种方法可以解决。 1. 如果你只用php而不用数据库的话,那时间戳+随...2015-11-24
  • jquery实现的伪分页效果代码

    本文实例讲述了jquery实现的伪分页效果代码。分享给大家供大家参考,具体如下:这里介绍的jquery伪分页效果,在火狐下表现完美,IE全系列下有些问题,引入了jQuery1.7.2插件,代码里有丰富的注释,相信对学习jQuery有不小的帮助,期...2015-10-30
  • AngularJS实现分页显示数据库信息

    这篇文章主要为大家详细介绍了AngularJS实现分页显示数据库信息效果的相关资料,感兴趣的小伙伴们可以参考一下...2016-07-06
  • 基于jquery实现表格无刷新分页

    这篇文章主要介绍了基于jquery实现表格无刷新分页,功能实现了前端排序功能,增加了前端搜索功能,感兴趣的小伙伴们可以参考一下...2016-01-08
  • C#将数字转换成字节数组的方法

    这篇文章主要介绍了C#将数字转换成字节数组的方法,涉及C#字符串操作的技巧,非常具有实用价值,需要的朋友可以参考下...2020-06-25
  • C++实现数字转换为十六进制字符串的方法

    这篇文章主要介绍了C++实现数字转换为十六进制字符串的方法,涉及C++操作数字与字符串转换的相关技巧,需要的朋友可以参考下...2020-04-25
  • vue实现页面打印自动分页的两种方法

    这篇文章主要为大家详细介绍了vue实现页面打印自动分页的两种方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-09-29