成都创新互联网站制作重庆分公司

php验证用户数据怎么写 php登陆验证

php写出一个验证用户ID的正则表达式

"/^[^\x{4e00}-\x{9fa5}A-Za-z0-9_-\.]+$/u"

在郯城等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站设计、做网站 网站设计制作按需规划网站,公司网站建设,企业网站建设,成都品牌网站建设,成都全网营销,成都外贸网站建设,郯城网站建设费用合理。

用preg_match函数

对于uft-8验证,gbk的也差不多,就中文验证可能不一样

2到24位就不好说了,尤其中文,在utf-8下,字符位数不一样,php中用使用mb_strlen来计算长度,中文都算一个字符,在使用mb_strlen函数时首先应该设置编码字符集,mb_internal_encoding('utf-8'),或者,在mb_strlen中第二个参数给出编码集

中文utf-8在mysql中也是算一个字符

php会员登陆验证怎么写啊?

这是我写,你可以参考下``

?

session_start();

//获取到用户的密码和用户名

$username=$_POST['loginname'];

$userpass=$_POST['loginpass'];

//调用数据库执行类

include_once "Connect.class.php";

$link=new Connect();

//查询是否有与之配对的信息,有返回1,没有返回0

$strsql="select * from user where username='$username' and userpass='$userpass'";

//echo $strsql;

$row = $link-execute($strsql);

//记录用户的名字,在后面的网页中保存

$_SESSION['sname']=$username;

//echo $_SESSION['sname'];

if($link-getnum($row)==1){

echo "scriptalert('登陆成功');location.href='usercenter.php';/script";

}else{

echo "scriptalert('登陆失败');location.href='index.php';/script";

}

?

/*----------------------------*/

connnect.class.php

?

/**

* 数据库的连接与各项基本操作

*

* 实现数据库 连接,并提供insert,update,delete等基本的数据库查询语句执行方法,

* 返回查询结果集或函数执行结果。

*

* @version V1.0,2005-07-26

*/

class Connect

{

/**

* @var Object $conn 数据库连接字

* @Access private

*/

var $conn;

var $result;

var $num; //查询所得记录数

var $error; //错误信息

var $row; //一条记录

var $insert_id; //自动增量值

/**

* 构造方法,根据给定的主机名,用户名,密码,数据库名建立与数据库的连接,

* 如果连接失败则抛出错误。

*

* @param String $host 数据库所在主机名或地址

* @param String $user 数据库上的一个用户名

* @param String $pwd 用户名对应的密码

* @param String $db 需要连接的库名

*

* @access public

*/

function Connect($host="localhost",$user="root",$pwd="",$db="shenglan") {

$this-conn = $this-mysql_db_connect($host,$user,$pwd,$db);

}

/**

* 执行一条sql语句,如果是查询语句,则返回一个以字段名为下标的二维数组;

* 如果是一条执行语句,则返回执行结果,执行成功返回true,失败返回false。示例如下:

* @param String $sql 需要执行的查询语句

* @return array 以字段名为下标的数组集合或者Boolean值

* @access public

*/

function execute($sql) {

if(strtolower(substr($sql,0,6))=="select")

{

//echo $sql;

return $this-Query($sql);

} else {

if($this-result = mysql_query($sql,$this-conn))

return true;

else

return false;

}

}

/**

* 取得上次查询所得数据的记录数

* @return int 查询所得记录数

* @access public

*/

function getNum() {

return $this-num;

}

/**

* 向指定的数据表中插入一条记录

* @param String $table 插入数据的数据表名

* @param Array $array 以字段名为下标的数组,如:code

*

* @return Boolean 插入成功返回true,失败返回false

*/

function insertSql($table,$array) {

$t1 = array();

$t2 = array();

foreach($array as $key=$value) {

$t1[] = $key;

$t2[] = "'".$value."'";

}

$sql = "insert into ".$table." (".implode(",",$t1).") values (".implode(",",$t2).")";

//echo $sql;

if($this-execute($sql)) {

$this-insert_id = mysql_insert_id();

return true;

} else

throw new Exception("错误的SQL语句:".$sql);

}

/**

* 取得最用一个插入有自动增量字段的自动增量值

* @return int 最后一个自动增量值

* @access public

*/

function getInsertID() {

return $this-insert_id;

}

/**

* 删除给定表中的数据

* @param String $table 表名

* @param Array $array 删除条件,用法同function insertSql($table,$array) 中的参数$array

* @return Boolean

* @access public

*/

function delSql($table,$array) {

$t1 = array();

foreach($array as $key=$value) {

$t1[] = $key."='".$value."'";

}

$sql = "delete from ".$table." where ".implode(" and ",$t1);

if($this-execute($sql))

return true;

else

throw new Exception("错误的SQL语句:".$sql);

}

/**

* 修改给定表中的数据

* @param String $table 表名

* @param Array $array 修改的字段名和值,用法同function insertSql($table,$array) 中的参数$array

* @return Boolean 修改成功返回true,失败返回false

* @access public

*/

function updateSql($table,$array,$where=0) {

$t1 = array();

foreach($array as $key=$value) {

$t1[] = $key."='".$value."'";

}

$sql = "update ".$table." set ".implode(", ",$t1)." where ".$where;

if($this-execute($sql))

return true;

else

throw new Exception("错误的SQL语句:".$sql);

}

/**

* 返回最后一次Insert或Update操作受影响的数据行数

* @return int 行数

* @access public

*/

function getAffectedRows() {

return mysql_affected_rows();

}

/*************** private fucntions ********************/

/**

*连接数据库

*@access private

*/

function mysql_db_connect($host,$user,$pwd,$db) {

$conn = mysql_connect($host,$user,$pwd) or die(mysql_error());

mysql_select_db($db,$conn) or die(mysql_error());

return $conn;

}

/**

* 执行一句查询语句,返回一个以字段名为下标的数组集合

*

* @param String $sql 需要执行的查询语句

* @return Array 以字段名为下标的数组集合

* @access private

*/

function Query($sql) {

$array = array();

if(!$this-result = mysql_query($sql,$this-conn)) {

$this-num = 0;

return $array;

}

$this-num = mysql_num_rows($this-result);

for($i=0;$i mysql_num_fields($this-result);$i++) {

$field[$i] = mysql_field_name($this-result,$i);

}

for($i=0;$i$this-num;$i++) {

$parray = $this-getRow();

$array[$i] = $parray;

}

return $array;

}

/**

* 取得查询所得数据集中一条数据

* @return Array

* @access private

*/

function getRow() {

$array = array();

if($this-num==0)

return $array;

$fields = mysql_num_fields($this-result);

$this-row = mysql_fetch_array($this-result);// or die(mysql_error());

for($i=0;$i$fields;$i++) {

$array[mysql_field_name($this-result,$i)] = $this-row[$i];

}

return $array;

}

}

?

thinkphp 从数据库验证用户名和密码的代码,能防止sql注入,,,一般咋么写的啊?高分,

即便用户输入了一些恶意的id参数,系统也会强制转换成整型,避免恶意注入。这是因为,系统会对数据进行强制的数据类型检测,并且对数据来源进行数据格式转换。而且,对于字符串类型的数据,ThinkPHP都会进行escape_string处理(real_escape_string,mysql_escape_string)。

而且,你在验证的时候尽量使用数组查询,这样会比较安全,比如:

$map['username']=I('post.name');

$map['userpassword']=I('post.password');

$list=$data=D("user")-where($map)-find();

这样就好了

一个简单的php+mysql用户登录验证的代码

$db=mysql_connect(连接你的数据库);

mysql_select_db('login', $db);

$u=$_POST['u'];

$p=$_POST['p'];

if($u $p){

$query=mysql_query('select * from exam where name=\''.$u.'\'',$db);

if($re=mysql_fetch_array($query,MYSQL_ASSOC)$re['password']==$p){

exit('scriptalert(\'登陆成功\');history.back();/script');

}else{

exit('scriptalert(\'用户名不存在,或密码错误\');history.back();/script');

}

}


分享文章:php验证用户数据怎么写 php登陆验证
本文链接:http://cxhlcq.com/article/doshojj.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部