ADODB PHP 数据库万能引擎类

 更新时间:2016年11月25日 15:56  点击:1654

1、 PHP ADODB 地址方式连接数据库教程
2、 PHP ADODB 对象方式获取数据库内容
3、 PHP ADODB HTML代码方式显示内容
4、 PHP ADODB 实现内容自动分页功能
 

  include_once("adodb5/adodb.inc.php教程");
 
  /* $db = NewADOConnection('mysql教程://root:@localhost/upload');
   $sql="SELECT * FROM `pic`";
   $db->SetFetchMode(ADODB_FETCH_ASSOC);
   //mysql_fetch_array()
   $sr1 = $db->Execute($sql);
   print_r($sr1->fields);
*/

   $db = NewADOConnection('mysql');
   $db->PConnect("localhost", "root", "", "upload");
   $sql="SELECT * FROM `pic`";
   $rs2=$db->Execute($sql);
  while($row=$rs2->FetchNextObject()){
    echo $row->NAME;
  }
*/
 
 include_once("adodb5/adodb-pager.inc.php");
 session_start();
   $db = NewADOConnection('mysql');
   $db->Connect("localhost", "root", "", "upload");
   $db->Execute("set names 'GBK'");

   $sql="SELECT * FROM `pic`";
   $pager=new ADODB_Pager($db,$sql);
   $pager->Render(2);
  
/*
include_once("adodb5/tohtml.inc.php");
   $db = NewADOConnection('mysql');
   $db->Connect("localhost", "root", "", "upload");
   $sql="SELECT * FROM `pic`";
   $rs2=$db->Execute($sql);
   echo rs2html($rs2);
*/

如何创建 cookie?
setcookie() 函数用于设置 cookie。

注释:setcookie() 函数必须位于 <html> 标签之前。

 

创建您的第一个PHP cookie
当您创建一个cookie,使用函数setcookie,你必须指定三个参数。这些参数是setcookie(名称,值,过期):

姓名:您的Cookie的名称。您将使用此名称以后检索你的cookie,所以不要忘记它!
价值:在您的cookie中存储的值。共同价值观是用户名(字符串)和最后的访问时间(日期)。
到期:日期时,Cookie将过期,被删除。如果您没有设置此过期日期,那么它将被视为一个会话cookie被删除,并重新启动浏览器时。
在这个例子中,我们将创建一个Cookie,它存储用户上次访问频率来衡量人们回访我们的网页。我们希望人们忽视超过两个月采取返回到网站,所以我们将设置Cookie的到期日期中的两个未来个月!

<?php教程
//Calculate 60 days in the future
//seconds * minutes * hours * days + current time
$inTwoMonths = 60 * 60 * 24 * 60 + time();
setcookie('lastVisit', date("G:i - m/d/y"), $inTwoMonths);
?>

如果你不能走在这个例子中有所涉及的日期计算。重要的是你知道如何设置了一个cookie,通过指定的三个重要参数:名称,价值和到期日期。

检索你的新鲜曲奇
如果你的cookie的尚未到期的,让我们从该用户的个人电脑是使用恰当的关联数组名为$ _COOKIE中。你的存储cookie的名称是关键,将让您找回您的存储cookie的值!

<?php
if(isset($_COOKIE['lastVisit']))
 $visit = $_COOKIE['lastVisit'];
else
 echo "You've got some stale cookies!";

echo "Your last visit was - ". $visit;
?>
cookie 常用于识别用户。cookie 是服务器留在用户计算机中的小文件。每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie。通过 PHP,您能够创建并取回 cookie 的值。


如果浏览器不支持 cookie 该怎么办?
如果您的应用程序涉及不支持 cookie 的浏览器,您就不得不采取其他方法在应用程序中从一张页面向另一张页面传递信息。一种方式是从表单传递数据

function getGoogleIndex($url, $type) {
 $url = getShortUrl($url);
 $content = getUrlContent("http://www.google.com.hk/search?hl=zh-CN&source=hp&q=$type:$url");
 $content = @iconv('gb2312', 'utf-8', $content);
 switch ($type) {
  case 'site' :
   $pattern = "/获得约 <b>(.*?)</b> 条结果/i";
   break;
  case 'link' :
   $pattern = "/有 <b>(.*?)</b>/i";
   break;
  default :
   exit;
 }
 preg_match($pattern, $content, $GoogleIndex);
 return str_replace('约', '', $GoogleIndex[1]);
}

function getBaiduIndex($url, $type) {
 $url = getShortUrl($url);
 $content = getUrlContent("http://www.baidu.com/s?wd=$type:$url");
 $content = @iconv('gb2312', 'utf-8', $content);
 preg_match('/找到相关网页(.*?)篇/i', $content, $BaiduIndex);
 return str_replace('约', '', $BaiduIndex[1]);
}
 
function getBingIndex($url, $type) {
 $url = getShortUrl($url);
 $content = getUrlContent("http://cn.bing.com/search?q=$type:$url");
 preg_match('/共 (.*?) 条/i', $content, $BingIndex);
 return $BingIndex[1];
}

function getYahooIndex($url, $type) {
 $url = getShortUrl($url);
 $qurl = "http://sitemap.cn.yahoo.com/search?p=";
 switch ($type) {
  case 'site' :
   $qurl .= $url;
   $pattern = "/被收录的网页: 共 <strong>(.*?)</strong> 条/i";
   break;
  case 'link' :
   $qurl .= $url.'&bwm=i';
   $pattern = "/链向该地址的网页: 共 <strong>(.*?)</strong> 条/i";
   break;
  default :
   exit;
 }
 $content = getUrlContent($qurl);
 preg_match($pattern, $content, $YahooIndex);
 return format_number($YahooIndex[1]); 
}

function getUrlContent($url) {
 $content = @file_get_contents($url);
 return $content;
}

1、设置Cookie 

PHP用SetCookie函数来设置Cookie。必须注意的一点是:Cookie是HTTP协议头的一部分,用于浏览器和服务器之间传递信息,所以必须在任何属于HTML文件本身的内容输出之前调用Cookie函数。 
SetCookie函数定义了一个Cookie,并且把它附加在HTTP头的后面,SetCookie函数的原型如下: 
int SetCookie(string name, string value, int expire, string path, string domain, int secure); 
除了name之外所有的参数都是可选的。value,path,domain三个参数可以用空字符串代换,表示没有设置;expire 和 secure两个参数是数值型的,可以用0表示。expire参数是一个标准的Unix时间标记,可以用time()或mktime()函数取得,以秒为单位。secure参数表示这个Cookie是否通过加密的HTTPS协议在网络上传输。 
当前设置的Cookie不是立即生效的,而是要等到下一个页面时才能看到.这是由于在设置的这个页面里Cookie由服务器传递给客户浏览器,在下一个页面浏览器才能把Cookie从客户的机器里取出传回服务器的原因。 
在同一个页面设置Cookie,实际是从后往前,所以如果要在插入一个新的Cookie之前删掉一个,你必须先写插入的语句,再写删除的语句,否则可能会出现不希望的结果。 
来看几个例子: 
简单的: 
SetCookie("MyCookie", "Value of MyCookie"); 
带失效时间的: 
SetCookie("WithExpire", "Expire in 1 hour", time()+3600);//3600秒=1小时 
什么都有的: 
SetCookie("FullCookie", "Full cookie value", time()+3600, "/forum", ".php教程user.com", 1); 

这里还有一点要说明的,比如你的站点有几个不同的目录,那么如果只用不带路径的Cookie的话,在一个目录下的页面里设的Cookie在另一个目录的页面里是看不到的,也就是说,Cookie是面向路径的。实际上,即使没有指定路径,WEB服务器会自动传递当前的路径给浏览器的,指定路径会强制服务器使用设置的路径。解决这个问题的办法是在调用SetCookie时加上路径和域名,域名的格式可以是“www.phpuser.com”,也可是 “.phpuser.com”。 
SetCookie函数里表示value的部分,在传递时会自动被encode,也就是说,如果value的值是“test value”在传递时就变成了“test%20value”,跟URL的方法一样。当然,对于程序来说这是透明的,因为在PHP接收Cookie的值时会自动将其decode。 
如果要设置同名的多个Cookie,要用数组,方法是: 
SetCookie("CookieArray[]", "Value 1"); 
SetCookie("CookieArray[]", "Value 2"); 
或 
SetCookie("CookieArray[0]", "Value 1"); 
SetCookie("CookieArray[1]", "Value 2"); 

2、接收和处理Cookie 

PHP对Cookie的接收和处理的支持非常好,是完全自动的,跟FORM变量的原则一样,特别简单。 
比如设置一个名为MyCookier的Cookie,PHP会自动从WEB服务器接收的HTTP头里把它分析出来,并形成一个与普通变量一样的变量,名为 $myCookie,这个变量的值就是Cookie的值。数组同样适用。另外一个办法是引用PHP的全局变量$HTTP_COOKIE_VARS数组。 
分别举例如下:(假设这些都在以前的页面里设置过了,并且仍然有效) 
echo $MyCookie; 
echo $CookieArray[0]; 
echo count($CookieArray); 
echo $HTTP_COOKIE_VARS["MyCookie"]; 
就这么简单。 

3、删除Cookie 

要删除一个已经存在的Cookie,有两个办法: 
一是调用只带有name参数的SetCookie,那么名为这个name的Cookie将被从关系户机上删掉;另一个办法是设置Cookie的失效时间为 time()或time()-1,那么这个Cookie在这个页面的浏览完之后就被删除了(其实是失效了)。 
要注意的是,当一个Cookie被删除时,它的值在当前页在仍然有效的。 

4、使用Cookie的限制 

首先是必须在HTML文件的内容输出之前设置; 
其次不同的浏览器对Cookie的处理不一致辞,且有时会出现错误的结果。比如:MS IE+SERVICE PACK 1不能正确处理带域名和路径的Cookie,Netscape Communicator 4.05和MS IE 3.0不能正确处理不带路径和时间的Cookie。至于MS IE 5 好象不能处理带域名、路径和时间的Cookie。这是我在设计本站的页面时发现的。 
第三个限制是在客户端的。一个浏览器能创建的Cookie数量最多为30个,并且每个不能超过4KB,每个WEB站点能设置的Cookie总数不能超过20个。

手机(中国移动手机号码):regexp="^(((d{3}))|(d{3}-))?13[456789]d{8}|15[89]d{8}"

所有手机号码:regexp="^(((d{3}))|(d{3}-))?13[0-9]d{8}|15[89]d{8}"(新添加了158,159两个号段)


本文介绍一下验证手机号码的正则表达式,包含最新186,188号码哦,如下:

验证是否为手机号码的正则:"^(13[0-9]|15[0|3|6|7|8|9]|18[6|8|9])d{8}$"

验证是否为移动手机号码的正则:"^1(3[4-9]|5[012789]|8[78])d{8}$"


使用正则表达式匹配手机号码--java源代码

手机号验证的正则为:

var reg =/^0{0,1}(13[0-9]|15[7-9]|153|156|18[7-9])[0-9]{8}$/;

var reg =/^0{0,1}(13[0-9]|15[0-9])[0-9]{8}$/;
移动手机号的验证正则为:

var reg =/^0{0,1}(13[4-9]|15[7-9]|15[0-2]|18[7-8])[0-9]{8}$/;
2009.11.23 新增加移动151,152号段,但是没有在源码教程演示中放出,下面代码已经更新

看个实例

 function CheckChinaMobileID(mobile){
       
        if (mobile==""){
            alert("请填写手机号码!");
            return false;
        }
        if(isNaN(mobile)||(mobile.length!=11)){
            alert("手机号码为11位数字!请正确填写!");
            return false;
        }
        var reg =/^0{0,1}(13[4-9]|15[7-9]|15[0-2]|18[7-8])[0-9]{8}$/;
        if(!reg.test(mobile))
        {
            alert("您的手机号码不是移动号码,请重新输入");
           
            return false;
        }
        alert("大爷,这个真是移动的手机号");
        return true;
    }
    function CheckIsMobile(mobile){
       
        if (mobile==""){
            alert("请填写手机号码!");
            return false;
        }
        if(isNaN(mobile)||(mobile.length!=11)){
            alert("手机号码为11位数字!请正确填写!");
            return false;
        }
       
        var reg =/^0{0,1}(13[0-9]|15[0-9])[0-9]{8}$/;
        if(!reg.test(mobile))
        {
            alert("您的手机号码不正确,请重新输入");
           
            return false;
        }
        alert("大爷,这个真是手机号,是哪的我不知道");
        return true;
    }
 
手机号验证正则表达式
手机号验证的正则为: var reg =/^0{0,1}(13[0-9]|15[7-9]|153|156|18[7-9])[0-9]{8}$/; var reg =/^0{0,1}(13[0-9]|15[0-9])[0-9]{8}$/; 移动手机号的验证正则为: var reg =/^0{0,1}(13[4-9]|15[7-9]|15[0-2]|18[7-8])[0-9]{8}$/; 手机号验证正则表达式昨天找了好久,终于在一个站上把这个手机号验证的正则表达式给扒下来了,手机号验证的正则为: var reg =/^0{0,1}(13[0-9]|15[7-9]|153|156|18[7-9])[0-9]{8}$/; var reg =/^0{0,1}(13[0-9]|15[0-9])[0-9]{8}$/; 移动手机号的验证正则为: var reg =/^0{0,1}(13[4-9]|15[7-9]|15[0-2]|18[7-8])[0-9]{8}$/; 新增加移动151,152号段,但是没有在源码演示中放出,下面代码已经更新这可是包括15x话段的哈

再来个js验证手机号码
<html> 
<head><title>验证手机号码</title> 
<script type="text/javascript教程"> 
function checkTelephone(obj){  
    var reg= /^[1][358]d{9}$/; //验证手机号码  
    var phone=document.getElementById('telephone').value;  
    if(!reg.test(phone)){  
        alert("电话号码格式错误!");  
        obj.value="";  
        obj.focus();  
        return false;  
    }else{  
        alert("您的电话号码:"+phone);  
        return true;  
    }  
}  
</script> 
</head> 
<body> 
<form> 
<input type="text"   id="telephone" onblur="checkTelephone(this)"> 
</form> 
</body> 
</html> 

[!--infotagslink--]

相关文章

  • PHP 数据库缓存Memcache操作类

    操作类就是把一些常用的一系列的数据库或相关操作写在一个类中,这样调用时我们只要调用类文件,如果要执行相关操作就直接调用类文件中的方法函数就可以实现了,下面整理了...2016-11-25
  • C#连接SQL数据库和查询数据功能的操作技巧

    本文给大家分享C#连接SQL数据库和查询数据功能的操作技巧,本文通过图文并茂的形式给大家介绍的非常详细,需要的朋友参考下吧...2021-05-17
  • php简单数据操作的实例

    最基础的对数据的增加删除修改操作实例,菜鸟们收了吧...2013-09-26
  • C#从数据库读取图片并保存的两种方法

    这篇文章主要介绍了C#从数据库读取图片并保存的方法,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下...2021-01-16
  • 解决Mybatis 大数据量的批量insert问题

    这篇文章主要介绍了解决Mybatis 大数据量的批量insert问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-09
  • Antd-vue Table组件添加Click事件,实现点击某行数据教程

    这篇文章主要介绍了Antd-vue Table组件添加Click事件,实现点击某行数据教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-17
  • 详解如何清理redis集群的所有数据

    这篇文章主要介绍了详解如何清理redis集群的所有数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-18
  • Intellij IDEA连接Navicat数据库的方法

    这篇文章主要介绍了Intellij IDEA连接Navicat数据库的方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借价值,需要的朋友可以参考下...2021-03-25
  • 在数据库里将毫秒转换成date格式的方法

    在开发过程中,我们经常会将日期时间的毫秒数存放到数据库,但是它对应的时间看起来就十分不方便,我们可以使用一些函数将毫秒转换成date格式。 一、 在MySQL中,有内置的函数from_unixtime()来做相应的转换,使用如下: 复制...2014-05-31
  • vue 获取到数据但却渲染不到页面上的解决方法

    这篇文章主要介绍了vue 获取到数据但却渲染不到页面上的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-11-19
  • C#操作本地文件及保存文件到数据库的基本方法总结

    C#使用System.IO中的文件操作方法在Windows系统中处理本地文件相当顺手,这里我们还总结了在Oracle中保存文件的方法,嗯,接下来就来看看整理的C#操作本地文件及保存文件到数据库的基本方法总结...2020-06-25
  • 如何解决局域网内mysql数据库连接慢

    通过内网连另外一台机器的mysql服务, 确发现速度N慢! 等了大约几十秒才等到提示输入密码。 但是ping mysql所在服务器却很快! 想到很久之前有过类似的经验, telnet等一些服务在连接请求的时候,会做一些反向域名解析(如果...2015-10-21
  • php把读取xml 文档并转换成json数据代码

    在php中解析xml文档用专门的函数domdocument来处理,把json在php中也有相关的处理函数,我们要把数据xml 数据存到一个数据再用json_encode直接换成json数据就OK了。...2016-11-25
  • MySQL快速复制数据库数据表的方法

    某些时候,例如为了搭建一个测试环境,或者克隆一个网站,需要复制一个已存在的mysql数据库。使用以下方法,可以非常简单地实现。假设已经存在的数据库名字叫db1,想要复制一份,命名为newdb。步骤如下:1. 首先创建新的数据库newd...2015-10-21
  • mybatis-plus 处理大数据插入太慢的解决

    这篇文章主要介绍了mybatis-plus 处理大数据插入太慢的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-18
  • mysqldump命令导入导出数据库方法与实例汇总

    mysqldump命令的用法1、导出所有库系统命令行mysqldump -uusername -ppassword --all-databases > all.sql 2、导入所有库mysql命令行mysql>source all.sql; 3、导出某些库系统命令行mysqldump -uusername -ppassword...2015-10-21
  • Mysql数据库错误代码中文详细说明

    1005:创建表失败1006:创建数据库失败1007:数据库已存在,创建数据库失败1008:数据库不存在,删除数据库失败1009:不能删除数据库文件导致删除数据库失败1010:不能删除数据目录导致删除数据库失败1011:删除数据库...2013-09-23
  • postgresql数据添加两个字段联合唯一的操作

    这篇文章主要介绍了postgresql数据添加两个字段联合唯一的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-04
  • c#异步读取数据库与异步更新ui的代码实现

    这篇文章主要介绍了c#从数据库里取得数据并异步更新ui的方法,大家参考使用吧...2020-06-25
  • Vue生命周期activated之返回上一页不重新请求数据操作

    这篇文章主要介绍了Vue生命周期activated之返回上一页不重新请求数据操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-07-26