ajax分页

<?php 
header('content-type:text/html;charset=utf8');
if(isset($_GET['page'])){
	$page=$_GET['page'];
}else{
	$page=1;
}
//定义一个用于截取一段字符串的函数msubstr()
function msubstr($str,$start,$len){    		//$str指的是字符串,$start指的是字符串的起始位置,$len指的是长度。
	$tmpstr="";
	$strlen=$start+$len;					//用$strlen存储字符串的总长度(从字符串的起始位置到字符串的总长度)
	for($i=0;$i<$strlen;$i++){				//通过for循环语句,循环读取字符串
		if(ord(substr($str,$i,1))>0xa0){    //如果字符串中首个字节的ASCII序数值大于0xa0,则表示为汉字
 			$tmpstr.=substr($str,$i,2);		//每次取出两位字符赋给变量$tmpstr,即等于一个汉字
 			$i++;						 	//变量自加1
	}else{									//如果不是汉字,则每次取出一位字符赋给变量$tmpstr
  		$tmpstr.=substr($str,$i,1);}
	}
		return $tmpstr;						//输出字符串
}
?>
<div id="synopsis">
	<table width="100%" border="0" cellspacing="0" cellpadding="0">
	<tr>
        <td height="20"> </td>
    </tr>
    <tr>
       <td>
		<?php 
		  if($page){												
			 $counter=file_get_contents("test.txt");				
		     $length=strlen($counter);								//读取超长文本数据,实现超长文本中数据的分页显示
		     $page_count=ceil($length/2048);						//计算页数,四舍五入取整数
		     $c=msubstr($counter,0,($page-1)*2048);
		     $c1=msubstr($counter,0,$page*2048);
			 echo substr($c1,strlen($c),strlen($c1)-strlen($c)); 
		  }?>    
	  </td>
    </tr>
    <tr>
        <td>
        <table>
  			<tr>
			    <td>
			    	<span> 页次:<?php echo $page;?> / <?php echo $page_count;?> 页 </span>
			    </td>
			    <td>
			    	<span>  分页:
             		<?php if($page!=1){  ?> 
						<a href="#" onclick='return artpagination("test.php?page=1")'>首页</a> 
						<a href="#" onclick='return artpagination("test.php?&page=<?php echo $page-1;?>")'>上一页</a> 
				 	<?php  }
				  	if($page<$page_count){ ?>
						<a href="#" onclick='return artpagination("test.php?page=<?php echo $page+1;?>")'>下一页</a> 
				        <a href="#" onclick='return artpagination("test.php?page=<?php echo $page_count;?>")'>尾页</a>
					<?php  } ?>
				    </span>
				</td>
  			</tr>
		</table>
		</td>
     </tr>
</table>
</div>
<script>
//使用XMLHttpRequest对象创建异步HTTP请求
function artpagination(url){      						  //创建自定义函数,获取传递的参数
  xmlHttp=new XMLHttpRequest();
  xmlHttp.open('get',url,true);   						  //根据传递的参数,通过get方法,执行另外一个实现分页功能的文件
  xmlHttp.onreadystatechange = function(){
    if(xmlHttp.readyState == 4 && xmlHttp.status == 200){ //将结果返回到div标签synopsis中
      document.getElementById("synopsis").innerHTML = xmlHttp.responseText;
    }
  }
  xmlHttp.send(null);
}
</script>
原文地址:https://www.cnblogs.com/aten/p/8961498.html