简单入门级php分页代码

 更新时间:2016年11月25日 15:07  点击:1478
一个初学者写的一款php分页哦,共 20 条 上一页 下一页这种效果,有需要分页的朋友可以参考一下,
 代码如下 复制代码

<?php
  include("file.php");
  $pagesize=5;
  $url=$_SERVER[REQUEST_URI];
  $url=parse_url($url);
  $url=$url[path];


  $a=mysql_query("select * from message");
  $b=mysql_num_rows($a);
   if($_GET[page]){
       $pagevel=$_GET[page];
       $page=($pagevel-1)*pagesize;
       $page.=',';
   }else{
       $page=1;   //这里加个未获取到值的处理
   }

   if($b>$pagesize){
       if($pagevel<=1) $pagevel=1;
       echo "共 $b 条 <a herf=$url?page="($pagevel-1)">上一页</a>" .
               " <a herf=$url?page="($pagevel+1)">下一页</a>";

   }
   $sql="select * from message limit $page ,$pagesize ";
   $query=mysql_query($sql);
   while($row=mysql_fetch_array($query)){
   echo "<hr><br>"."$row[title]"."$row[context]";

  }

?>

数组在php中是和个数据类型,它是一个特殊的类型可以存放不同的数据,包括在php中可用的大部份,下面我们想办法把二维数组中的数据输出来。

二维数组访问
例1:

 代码如下 复制代码
//建立数组
$arr=array("key"=>array("key2"=>"value"));
//访问二维数组“key2”元素
echo $arr["key"]["key2"];
例2:
//建立数组
$arr=array(array("key2"=>"value"));
//访问二维数组“key2”元素
echo $arr[0]["key2"];

更多维数组以此类推
$arr["键值"]["键值"]["键值"]["键值"]["键值"]。。。。

实例:

 代码如下 复制代码
$myphonebook   =   array   (  
  array("abcd","1234"),  
  array("efgh","5678"),  
  array("ijkl","9012")  
  );  
  echo   $myphonebook[0][0];   //   abcd  
  echo   $myphonebook[0][1];   //   1234


利用循环读取二维数组

 

 代码如下 复制代码
while($row=$db->fetch_array($query)){
    $arr[] = array($row[id],$row[f_id],$row[name]);
    //$arr[] = array('id'=>$row[id],'f_id'=>$row[f_id],'name'=>$row[name]);
}

二维数组读取还有一个方法就是利用foreach()来操作,这里我就不说了,我以前有写过相关的文章有需要的可以搜索一下。

大多数的 JavaScript 框架如 jquery,Mootools 等,在发出 Ajax 请求时,都会发送额外的 HTTP_X_REQUESTED_WITH 头部信息,头当他们一个ajax请求,因此你可以在服务器端侦测到 Ajax 请求

1,   通过传递_GET参数的方法简单实现网页请求的判断。

url上这么传递:*******.php?ajax

php这么判断:

if(isset($_GET['ajax'])) {

...这是一个ajax请求,然后...

}

else {

...这不是一个ajax请求,然后...

}

这种实现方法很差劲,相当容易容易容易伪造。判断和不判断么有任何区别。
所以又出来一种自认为很科学的处理方式,这种方式确实有一定的学习价值。


Php获取系统变量中的xmlHttpRequest判读。

首先你必须使用jquery,Js发送ajax请求,通过jquery发送的$.ajax, $.get, or $.post方法请求网页内容时,它会向服务器传递一个HTTP_X_REQUESTED_WITH的参数,这个参数的值是xmlHttpRequest。

Js 代码:

 代码如下 复制代码

beforeSend : function (XMLHttpRequest) {

    XMLHttpRequest.setRequestHeader("X-Requested-With","XMLHttpRequest");

};

参数名X-Requested-With,参数值XMLHttpRequest,你可以任意定义。Php取得时候要在参数名前面加上大写的http字样

 

 代码如下 复制代码

if(!emptyempty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest')
{
//If AJAX Request Then
}else{
//something else
}

1,  如果

你的jquery请求是通过iframe打开网页的,那么HTTP_X_REQUESTED_WITH参数不会被传递,也就是说你没有办法判断请求的类型。

2,  IE5,IE6老版本的浏览器总中$.ajax, $.get, or $.post方法不会自动发送HTTP_X_REQUESTED_WITH的参数到头部信息,因为php中也是无法获取参数进行判断。除非你自己构造XMLHttpRequest对象出来,然后再发送给php脚本,相当于用最原始的js实现ajax功能。这样做,jquery框架本来封装好的ajax就失去意义啦

介绍了php开发中常用的字符串操作函数,主要是字符查找函数,有需要的朋友可以参考一下
 代码如下 复制代码

 

<?php
//strstr:从左向右查找  返回值:字符串
//strrchr:从右向左查找 返回值:字符串
//strpos:从左向右查找  返回值:整型,假如查找的字符串不存在,则返回空
//strrpos:从右向左查找 返回值:整型
$str="天高任鸟飞,海阔凭鱼跃";//strstr:从左向右查找  strrchr:从右向左查找
echo "原始字符串:".$str."<br />";
echo "用strstr函数搜索“,”的返回结果:".strstr($str,",")."<br>";
echo "用strstr函数搜索“鸟飞”的返回结果:".strstr($str,"鸟飞")."<br>";

$str1="I have a great dream.";
echo "原始字符串:".$str1."<br />";
echo "用strrchr函数搜索“e”的返回结果:".strrchr($str1,"e")."<br>";
echo "用strrchr函数搜索“ea”的返回结果:".strrchr($str1,"ve")."<br>";

$str2="I am an abstract about abroad.";
echo "原始字符串为:".$str2."<br>";
echo "ab在字符串中的第一次出现位置为:".strpos($str2,"ab")."<br>";
echo "ab在字符串中的第一次出现位置为:".strpos($str2,"am")."<br>";
echo "abcd在字符串中第一次出现的位置为:".strpos($str2,"aman")."<br>";

$str3="I am is wang hui.";
echo "原始字符串为:".$str3."<br>";
echo "I在字符串中的最后一次出现位置为:".strrpos($str3,"I")."<br>";
echo "an在字符串中的最后一次出现位置为:".strrpos($str3,"an")."<br>";
echo "i在字符串中最后一次出现的位置为:".strrpos($str3,"i");

?>

 

如果$a和$b指向同一内存地址,自己了不太清楚不过网站找有需要的朋友参考一下。
 代码如下 复制代码

<?php
$a='CC';
$b=$a;//$a和$b指向同一内存地址
$a='DD';
echo $b;
/*
php中对于地址的指向(类似指针)功能不是由用户自己来实现的,
是由Zend核心实现的,php中引用采用的是“写时拷贝”的原理,
就是除非发生写操作,指向同一个地址的变量或者对象是不会被拷贝的。
当$a='DD';
由于$a与$b所指向的内存的数据要重新写一次了,此时Zend核心会自动判断
自动为$b生产一个$a的数据拷贝,重新申请一块内存进行存储。
* */

echo '<hr>';
$c='ABC';
$d=&$c;//$b指向$a的内存地址,传地址赋值
$d='E';
echo $c;
/**
CC
--------------------------------------------------------------------------------
E
* */
?>

<?php
//函数的引用返回
function &test()
{
static $b=0;//申明一个静态变量
$b=$b+1;
echo '$b='.$b;
echo '<br>';
return $b;
}
$a=test();
echo '$a='.$a;//这里不是函数的引用返回,跟普通的函数调用没有区别
$a=&test();  //这种方式才是函数的引用返回。
//至于什么是引用返回呢(PHP手册上说:引用返回用在当想用函数找到引用应该被绑定在哪一个变量上面时。)
//用在这里意思就是test()被绑定在$a上了。
echo '$a='.$a;
$a=6;
test();//这条语句会输出$b的值 为7
echo '$a='.$a;
/*
$b=1
$a=1$b=2
$a=2$b=7
$a=7
* */
?>

<?php
//引用传递
function printArray(&$arr){
     //echo count($arr);
     array_pop($arr);
     echo count($arr);

}
//值传递
function printArray2($arr){
     //echo count($arr);
     array_pop($arr);
     echo count($arr);
}
$a=array(1,2,3);
$b=$a;
//$b=&$a;
printArray($a);
print_r($b);
print_r($a);
echo '<hr>';
printArray($a);
print_r($b);
print_r($a);
/**
  2Array ( [0] => 1 [1] => 2 [2] => 3 ) Array ( [0] => 1 [1] => 2 )
--------------------------------------------------------------------------------
1Array ( [0] => 1 [1] => 2 [2] => 3 ) Array ( [0] => 1 )
  * */
?>
<?php
//对象的引用
class a{
var $name="ABC";
}
$b=new a;
$c=$b;
echo '$b->name='.$b->name;//这里输出ABC
echo '<br>';
echo '$c->name='.$c->name;//这里输出ABC
echo '<br>';
$b->name="DEF";
echo '$b->name='.$b->name;
echo '<br>';
echo '$c->name='.$c->name;
echo '<hr>';
/*
在PHP5中 对象的复制 是通过引用来实现的。
上列中$b=new a; $c=$b; 其实等效于$b=new a; $c=&$b;
PHP5中默认就是通过引用来调用对象,
但有时你可能想建立一个对象的副本,
并希望原来的对象的改变不影响到副本 .
为了这样的目的,PHP定义了一个特殊的方法,称为__clone.
* */
$x=new a;
$y=clone $x;
$x->name='XXX';
echo '$x->name='.$x->name;
echo '<br>';
echo '$y->name='.$y->name;

/*
  $b->name=ABC
$c->name=ABC
$b->name=DEF
$c->name=DEF
--------------------------------------------------------------------------------
$x->name=XXX
$y->name=ABC
  * */
?>

[!--infotagslink--]

相关文章

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

    我们这里介绍php与KindEditor编辑器使用时如何利用KindEditor编辑器的分页功能实现文章内容分页,KindEditor编辑器在我们点击分页时会插入代码,我们只要以它为分切符,就...2016-11-25
  • 自己动手写的jquery分页控件(非常简单实用)

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

    轻松学习C#的基础入门,了解C#最基本的知识点,C#是一种简洁的,类型安全的一种完全面向对象的开发语言,是Microsoft专门基于.NET Framework平台开发的而量身定做的高级程序设计语言,需要的朋友可以参考下...2020-06-25
  • photoshop画斜线/直线/虚线的入门级教程

    这篇文章算是超级入门级别的了,我们下面来给各位介绍在photoshop画斜线/直线/虚线的教程了,希望下面这篇文章给你入门来帮助。 PS怎么画斜线 选择铅笔工具,或者画笔...2016-09-14
  • 不打开网页直接查看网站的源代码

      有一种方法,可以不打开网站而直接查看到这个网站的源代码..   这样可以有效地防止误入恶意网站...   在浏览器地址栏输入:   view-source:http://...2016-09-20
  • php 调用goolge地图代码

    <?php require('path.inc.php'); header('content-Type: text/html; charset=utf-8'); $borough_id = intval($_GET['id']); if(!$borough_id){ echo ' ...2016-11-25
  • JS基于Mootools实现的个性菜单效果代码

    本文实例讲述了JS基于Mootools实现的个性菜单效果代码。分享给大家供大家参考,具体如下:这里演示基于Mootools做的带动画的垂直型菜单,是一个初学者写的,用来学习Mootools的使用有帮助,下载时请注意要将外部引用的mootools...2015-10-23
  • JS+CSS实现分类动态选择及移动功能效果代码

    本文实例讲述了JS+CSS实现分类动态选择及移动功能效果代码。分享给大家供大家参考,具体如下:这是一个类似选项卡功能的选择插件,与普通的TAb区别是加入了动画效果,多用于商品类网站,用作商品分类功能,不过其它网站也可以用,...2015-10-21
  • JS实现自定义简单网页软键盘效果代码

    本文实例讲述了JS实现自定义简单网页软键盘效果。分享给大家供大家参考,具体如下:这是一款自定义的简单点的网页软键盘,没有使用任何控件,仅是为了练习JavaScript编写水平,安全性方面没有过多考虑,有顾虑的可以不用,目的是学...2015-11-08
  • jquery实现的伪分页效果代码

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

    php 取除连续空格与换行代码,这些我们都用到str_replace与正则函数 第一种: $content=str_replace("n","",$content); echo $content; 第二种: $content=preg_replac...2016-11-25
  • php简单用户登陆程序代码

    php简单用户登陆程序代码 这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。 <center> <p>&nbsp;</p> <p>&nbsp;</p> <form name="form1...2016-11-25
  • PHP实现清除wordpress里恶意代码

    公司一些wordpress网站由于下载的插件存在恶意代码,导致整个服务器所有网站PHP文件都存在恶意代码,就写了个简单的脚本清除。恶意代码示例...2015-10-23
  • JS实现双击屏幕滚动效果代码

    本文实例讲述了JS实现双击屏幕滚动效果代码。分享给大家供大家参考,具体如下:这里演示双击滚屏效果代码的实现方法,不知道有觉得有用处的没,现在网上还有很多还在用这个特效的呢,代码分享给大家吧。运行效果截图如下:在线演...2015-10-30
  • js识别uc浏览器的代码

    其实挺简单的就是if(navigator.userAgent.indexOf('UCBrowser') > -1) {alert("uc浏览器");}else{//不是uc浏览器执行的操作}如果想测试某个浏览器的特征可以通过如下方法获取JS获取浏览器信息 浏览器代码名称:navigator...2015-11-08
  • JS日期加减,日期运算代码

    一、日期减去天数等于第二个日期function cc(dd,dadd){//可以加上错误处理var a = new Date(dd)a = a.valueOf()a = a - dadd * 24 * 60 * 60 * 1000a = new Date(a)alert(a.getFullYear() + "年" + (a.getMonth() +...2015-11-08
  • PHP开发微信支付的代码分享

    微信支付,即便交了保证金,你还是处理测试阶段,不能正式发布。必须到你通过程序测试提交订单、发货通知等数据到微信的系统中,才能申请发布。然后,因为在微信中是通过JS方式调用API,必须在微信后台设置支付授权目录,而且要到...2014-05-31
  • vue.js 表格分页ajax 异步加载数据

    Vue.js通过简洁的API提供高效的数据绑定和灵活的组件系统.这篇文章主要介绍了vue.js 表格分页ajax 异步加载数据的相关资料,需要的朋友可以参考下...2016-10-20
  • PHP常用的小程序代码段

    本文实例讲述了PHP常用的小程序代码段。分享给大家供大家参考,具体如下:1.计算两个时间的相差几天$startdate=strtotime("2009-12-09");$enddate=strtotime("2009-12-05");上面的php时间日期函数strtotime已经把字符串...2015-11-24
  • php怎么用拼音 简单的php中文转拼音的实现代码

    小编分享了一段简单的php中文转拼音的实现代码,代码简单易懂,适合初学php的同学参考学习。 代码如下 复制代码 <?phpfunction Pinyin($_String...2017-07-06