php验证用户名是否以字母开头与验证密码只能为数字和字母的组合代码

 更新时间:2016年11月25日 15:11  点击:2304
三款三种常用验证函数 验证邮箱地址格式 验证密码只能为数字和字母的组合 验证用户名是否以字母开头代码哦,这是用户注册时或提交表单时会用的哦。
 代码如下 复制代码
 function is_email($email)
 {
  if (preg_match("/[a-za-z0-9]+@[a-za-z0-9]+.[a-z]{2,4}/",$email,$mail))
  {
      return true;
  }
  else
  {
      return false;
  }
 }

 /**
  * 验证用户名是否以字母开头
  */
 

 代码如下 复制代码
function is_user_name($user)
 {
  if (preg_match("/^[a-za-z]{1}([a-za-z0-9]|[._]){3,19}$/",$user,$username))
  {
      return true;
  }
  else
  {
      return false;
  }
 }

 /**
  * 验证密码只能为数字和字母的组合
  */
 

 代码如下 复制代码
function is_ps教程d($psd)
 {
  if (preg_match("/^(w){4,20}$/",$psd,$password))
  {
      return true;
  }
  else
  {
      return false;
  }
 }
在WEB开发中经常会用到cookie来帮我们处理一些小问题,下面我们就写了一个简单的关于php cookie函数的设置与删除cookie的代码。


/**
  * 设置cookie
   * n 名称
   * c 值
   * e 有效期 0 默认 一个月 1 关闭立即失效
   */
 

 代码如下 复制代码
function w_cookie($n, $c, $e = 0,$isdes=1)
 {
   if($isdes==1){$c=endes($c,deskey);}
      $exp = time() + 3600 * 24 * 30;
      if($e == 0)
     {
          setcookie($n, $c, $exp,"/");
     }
     else
     {
      setcookie($n, $c,0,"/");
      }
 }


 
 //关闭cookie方法
 

 代码如下 复制代码
 w_cookie('bb', 'www.111cn.net', $e = 0,$isdes=1);


 
 //开启设置cookie方法

 代码如下 复制代码
 
 w_cookie('bb', 'www.111cn.net', $e = 1,$isdes=1);


?>

 

 代码如下 复制代码

 function split_en_str($str,$distinct=true)
 {
  preg_match_all('/([a-za-z]+)/',$str,$match);
        if ($distinct == true)
        {
         $match[1] = array_unique($match[1]);
        }
        sort($match[1]);

        return $match[1];
 }

//实例应用

 代码如下 复制代码
$str ='word,word,world,cup';
print_r(split_en_str($str,$distinct=true));

/*
array
(
    [0] => cup
    [1] => word
    [2] => world
)
*/

这款文件上传代码是一个超级简单的上传代码,也是没进行过任何安全处理,这款php文件上传代码只适合学习使用哦
 代码如下 复制代码
header("content-type: text/html; charset=utf-8");
?>
<form method="post" action="./uploadaction.php" enctype="multipart/form-data" name="form">
       <input type="file" name="upfile" id="myfile" />
    <input type="submit" name="submit" value="上传" />
</form>

//uploadaction.php

<?php

 代码如下 复制代码
  header("content-type:text/html; charset=utf-8");
   if(!empty($_files))
  {
   $date= date("ymdhis",time());
   $fileinfo=$_files['upfile'];
   foreach($_files['upfile'] as $name=>$value)
    echo $name.'='.$value.'<br>';
   $filesavename='./file/'.$date.$fileinfo['name'];
   move_uploaded_file($fileinfo['tmp_name'],$filesavename);
   echo $fileinfo['tmp_name'].'<br>';
   echo "上传成功<br>";
   echo "文件位置: $filesavename";
  }

frameset里面,也就是里面的frame是来自第三方站点(不同ip或不同域名),那么默认情况下ie会自动禁用这些站点的cookie,也就是在请求某url时在http header里不发送它们的cookie,包括session的cookie。注意,这些站点在response里面设置的cookie还是会被发送到浏览器的。

但象ie 6.0和ie 7.0有个自己的标准.要支持p3p,ie 6的缺省隐私等级设置为"中"——即"阻止没有合同隐私策略的第三方cookie"。而在用户浏览a.php教程时 a.com写入的为第一方cookie,其嵌入的iframe指向b.php.这时b.com写入的就为第三方cookie了,所以它是被ie当在了大门外。

所以,每次当用户提交的cookie提交时,就挂掉了.因为传不到真实的服务器.

好了,不多讲了,直接讲解决方案.

php的程序

可以直接在b网站中写入
<?php
header('p3p: cp="cura adma deva ps教程ao psdo our bus uni pur int dem sta pre com nav otc noi dsp cor"')
?>
这样就能接受第三方的cookie啦。

lighttpd的服务器

server.modules    = ("mod_setenv")

setenv.add-response-header = ( "p3p" => "cp='cura adma deva psao psdo our bus uni pur int dem sta pre com nav otc noi dsp cor'")

apache的服务器

<virtualhost>

header set p3p 'cp="cura adma deva psao psdo our bus uni pur int dem sta pre com nav otc noi dsp cor"'

</virtualhost>

iis的服务器
增加一个网站http头来解决问题;
管理工具——〉选择一个网站——〉属性——〉http头,增加一个http头
然后输入头名:p3p
输入头内容:cp=cao psa our

如果要登陆就如下设置

setcookie('auth_member_string', 0, time()+3600,'/',$cfg['domain']);
 setcookie('auth_member_name',0,time()+3600,'/',$cfg['domain']);
 setcookie('auth_member_realname',0,time()+3600,'/',$cfg['domain']);

登出

setcookie('auth_member_string', 0, time()-1,'/',$cfg['domain']);
 setcookie('auth_member_name',0,time()-1,'/',$cfg['domain']);
 setcookie('auth_member_realname',0,time()-1,'/',$cfg['domain']);

下面来看一个测试实例

我只写一个大概,为了测试的方便,先编辑hosts文件,加入测试域名(c:windowssystem32driversetchosts)

127.0.0.1        www.a.com
127.0.0.1        www.b.com

首先:创建 a_setcookie.php 文件,内容如下:

<?php
//header('p3p: cp="cura adma deva psao psdo our bus uni pur int dem sta pre com nav otc noi dsp cor"');

setcookie("test", $_get['id'], time()+3600, "/", ".a.com");
?>

然后:创建 a_getcookie.php 文件,内容如下:

<?php
var_dump($_cookie);
?>

最后:创建 b_setcookie.php 文件,内容如下:

<script src="http://www.a.com/a_setcookie.php?id=www.b.com"></script>

----------------------------

三个文件创建完毕后,我们通过浏览器依次访问:

http://www.b.com/b_setcookie.php
http://www.a.com/a_getcookie.php

我们会发现,在访问b.com域的时候,我们并没有在a.com域设置上cookie值。

然后我们修改一下a_setcookie.php文件,去掉注释符号,a_setcookie.php即为:

<?php 
header('p3p: cp="cura adma deva psao psdo our bus uni pur int dem sta pre com nav otc noi dsp cor"'); 

setcookie("test", $_get['id'], time()+3600, "/", ".a.com"); 
?>

再次通过浏览器依次访问:

http://www.b.com/b_setcookie.php
http://www.a.com/a_getcookie.php

这次,你会发现在访问b.com域的时候,我们设置了a.com域的cookie值。

末了补充一句,似乎只有ie对跨域访问cookie限制比较严格,上述代码在firefox下测试,即使不发送p3p头信息,也能成功

[!--infotagslink--]

相关文章

  • 金额阿拉伯数字转换为中文的存储过程

    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
  • php 获取用户IP与IE信息程序

    php 获取用户IP与IE信息程序 function onlineip() { global $_SERVER; if(getenv('HTTP_CLIENT_IP')) { $onlineip = getenv('HTTP_CLIENT_IP');...2016-11-25
  • 金额阿拉伯数字转换为中文的自定义函数

    CREATE FUNCTION ChangeBigSmall (@ChangeMoney money) RETURNS VarChar(100) AS BEGIN Declare @String1 char(20) Declare @String2 char...2016-11-25
  • php简单用户登陆程序代码

    php简单用户登陆程序代码 这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。 <center> <p>&nbsp;</p> <p>&nbsp;</p> <form name="form1...2016-11-25
  • C#实现猜数字游戏

    这篇文章主要为大家详细介绍了C#实现猜数字游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-25
  • 安卓开发之设置密码只能输入字母和数字的组合

    设置登录密码我们一般会有限制的如由什么组合了,下面我们来看一篇关于安卓开发之设置密码只能输入字母和数字的组合方法,具体的细节如下所示。 无论是电脑还是手机...2016-09-20
  • php根据用户语言跳转相应网页

    当来访者浏览器语言是中文就进入中文版面,国外的用户默认浏览器不是中文的就跳转英文页面。 <&#63;php $lan = substr(&#8194;$HTTP_ACCEPT_LANGUAGE,0,5); if ($lan == "zh-cn") print("<meta http-equiv='refresh' c...2015-11-08
  • js检测用户输入密码强度

    一个用Javascript检测用户输入密码强度的效果代码,以下代码主要是从以下四个方面检测用户输入的密码的强度的,有兴趣的朋友可以自己添加或修改成自己想要的形式! 1. 如果输入的密码位数少于5位,那么就判定为弱。 2. 如果...2015-10-23
  • php有效防止同一用户多次登录

    【问题描述】:同一用户在同一时间多次登录如果不能检测出来,是危险的。因为,你无法知道是否有其他用户在登录你的账户。如何禁止同一用户多次登录呢? 【解决方案】 (1) 每次登录,身份认证成功后,重新产生一个session_id。 s...2015-11-24
  • php生成唯一数字id的方法汇总

    关于生成唯一数字ID的问题,是不是需要使用rand生成一个随机数,然后去数据库查询是否有这个数呢?感觉这样的话有点费时间,有没有其他方法呢?当然不是,其实有两种方法可以解决。 1. 如果你只用php而不用数据库的话,那时间戳+随...2015-11-24
  • php导出csv格式数据并将数字转换成文本的思路以及代码分享

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

    这篇文章主要介绍了C#判断一个字符串是否是数字或者含有某个数字的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • php ajax注册验证用户名是否存在代码

    这是注册程序是一款当用户输入完用户名是,就会自动去数据库中查询用户要注册的用户名是否己经被注册了,如果是返回提示否则提示可以注册。 conn.php文件 代...2016-11-25
  • C#将数字转换成字节数组的方法

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

    这篇文章主要介绍了C++实现数字转换为十六进制字符串的方法,涉及C++操作数字与字符串转换的相关技巧,需要的朋友可以参考下...2020-04-25
  • php数字每三位加逗号的功能函数

    php实现数字格式化,数字每三位加逗号的功能函数,具体代码如下: function num_format($num){ if(!is_numeric($num)){ return false; } $num = explode('.',$num);//把整数和小数分开 $rl = $num[1];//小数部分的值...2015-10-23
  • 微信小程序用户授权最佳实践指南

    这篇文章主要给大家介绍了关于微信小程序用户授权最佳实践的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-05-08
  • Lua判断变量是否为数字、字符串是否可以转换为数字等

    这篇文章主要介绍了Lua判断变量是否为数字、字符串是否可以转换为数字等,本文讲解了Lua 判断是字符还是数字的方法、Lua判断数字的方法、判断可否转换为数字的方法、判断并且准备一个初值的方法,需要的朋友可以参考下...2020-06-30
  • 简单php cookie用户登录实例

    cookie 的用途之一是存储用户在特定网站上的密码和 id。另外,也用于存储起始页的首选项。在提供个人化查看的网站上,将要求阁下的网络浏览器利用阁下计算机硬驱上的少量...2016-11-25