php用户注册过滤中文用户名方法

php教程用户注册过滤中文用户名,在很多开发中,用户名是不允许中文名字的,所以我们今天做个实例,限制中文名注册,在php中我们可以利用正则表达式来限制中文名如preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/"了,下面看实例。

<?php
header("Content-type:text/html;charset=gb2312");
require_once('inc/connect.php');
$xm=isset($_GET['txt'])?$_GET['txt']:'null';
$ta=isset($_GET['tag'])?$_GET['tag']:3;

if( $ta==1 ){
 if(preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/", $xm)){
   echo("<div id='error'>对不起,不能使用中文作为用户名! </div>");
   exit();
  }
 if($xm=='null' || $xm=='' || strlen($xm)>10 || strlen($xm)<3){
  echo("<div id='error'>对不起,用户由3-12Aa_zZ及数字组成! </div>");
  exit();
 }else{
  $result=mysql教程_query("select m_uid from wk_member where m_uid='$xm' ") or die('Error !'.mysql_error());
  if(!mysql_num_rows($result)){
   echo("<div id='success'><font color=red>&nbsp;&nbsp;&nbsp;&nbsp;恭喜你!此用户可以注册!</font> </div>");
  }else{
   echo("<div id='error'>对不起,用户己被注册请选择其它名称!</div>");
  }
 }

}elseif( $ta==0){
 if(@file_get_contents($xm)){
  echo '<div id="success">&nbsp;&nbsp;&nbsp;&nbsp;博客地址可以访问</div>';
 }else{
  echo '<div id="error">对不起,你输入的博客地址不能正常访问<div >';
 }
}else{
 echo "<div id='error'>对不起,无效的操作!</div>";
}
?>

总结:
方法很简单,只要获取用户输入的资料再利用preg_match判断一下就可以了。

时间: 2024-09-19 09:10:59

php用户注册过滤中文用户名方法的相关文章

wordpress支持中文用户名注册的2种实现方法

之前写了一篇  代码如下 复制代码 function ludou_non_strict_login( $username, $raw_username, $strict ) {     if( !$strict )         return $username;     return sanitize_user(stripslashes($raw_username), false); } add_filter('sanitize_user', 'ludou_non_strict_login'

php使用escapeshellarg时中文被过滤的解决方法_php技巧

本文分析了php使用escapeshellarg时中文被过滤的解决方法.分享给大家供大家参考.具体如下: 一.问题: 同样的代码,发现通过 localhost/index.php 访问,和在 shell 中通过 php ./index.php 运行結果却不一样. 在程序中需要通过 shell_exec 来执行一个 linux 程序,而它的输入来自 echo ,即: shell_exec('echo '.escapeshellarg($str).' | some_cmd 2>&1'); 二.解

php 过滤英文标点符号及过滤中文标点符号代码_php技巧

php 过滤英文标点符号 过滤中文标点符号 代码 复制代码 代码如下: function filter_mark($text){ if(trim($text)=='')return ''; $text=preg_replace("/[[:punct:]\s]/",' ',$text); $text=urlencode($text); $text=preg_replace("/(%7E|%60|%21|%40|%23|%24|%25|%5E|%26|%27|%2A|%28|%2

php按字符无乱码截取中文的方法

 这篇文章主要介绍了php按字符无乱码截取中文的方法,涉及php操作中英文字符串的技巧,非常具有实用价值,需要的朋友可以参考下     本文实例讲述了php按字符无乱码截取中文的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48

PHP截取中文字符串方法总结

  程序一:PHP截取中文字符串方法 由于网站首页以及vTigerCRM里经常在截取中文字符串时出现乱码(使用substr),今天找到一个比较好的截取中文字符串方法,在此与大家共享. function msubstr($str, $start, $len) { $tmpstr = ""; $strlen = $start + $len; for($i = 0; $i < $strlen; $i++) { if(ord(substr($str, $i, 1)) > 0xa0)

JavaScript将数字转换成大写中文的方法

 这篇文章主要介绍了JavaScript将数字转换成大写中文的方法,涉及javascript字符串及匹配的技巧,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例讲述了JavaScript将数字转换成大写中文的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 function intToChinese ( str ) { str

电脑中通过注册表将3DSMAX界面语言改成中文的方法

  电脑中通过注册表将3DSMAX界面语言改成中文的方法          1.按win+R打开运行,输入regedit打开注册表编辑器; 2.如果弹出用户帐户控制窗口则点击是; 3.依次展开HKEY_LOCAL_MACHINESOFTWAREAutodesk3dsMax16.0; 4.可以看到LanguageInstalled中有"CHS"和"ENU"项,将两个项的名称调换过来; 5.接着打开3DSMAX软件,就可以用中文显示. 若发现电脑中安装的3DSMAX软件

Beyond Compare显示已过滤文件夹方法

  Beyond Compare显示已过滤文件夹方法          步骤一:在打开的Beyond Compare文件夹同步会话操作界面中,如下图图例所示,在过滤栏目中,已经设置了过滤项目即名称为"docs"的子文件夹已被过滤掉. Beyond Compare 步骤二:按照个人同步文件夹的标准,选择文件夹同步方式,可选模式包括:更新左边.更新右边.更新两者等,接着单击界面"立即同步"按钮执行同步操作,如下图图例所示,完成同步操作后,会话窗格内无任何子文件或者文件.

邮件服务器-邮件用户名使用中文用户名可能吗?

问题描述 邮件用户名使用中文用户名可能吗? 如题,搭建了个邮件服务器,老板要求能让用户使用中文用户名,但是这个理论能做到吗?以前网易貌似尝试过,结局咋样 解决方案 理论上可以,但是这个用户要冒着无法接收来自大部分邮件服务器的邮件和发不出邮件到大部分邮件服务器的风险. 解决方案二: 就像以前有中文域名,于是很多人脑子一热就搞了一个,然后就呵呵了.反正你的工资是你老板开的,他让搞你就搞呗. 解决方案三: 跟你老板说,用中文用户名使用不稳定,你发的邮件对方有可能拒收,别人给你发邮件也有可能发不出来.