我用PHP MySQL创建了一个登录表单,其中我需要允许用户使用用户名或电话号码登录。
我有这样的代码:-
<form method="post" action="">
User name:<input type="text" name="uname" />
PWD:<input type="password" name="pwd" />
<input type="submit" name="sub" />
PHP代码:
<?php
include "config.php";
$uname = $_POST['uname'];
$pwd = $_POST['pwd'];
$query=mysql_query("select * from users where userId='$uname' and pwd ='$pwd' ");
if($query){
echo "login success":
}else
echo "login fail";
?>
改变这个;
$query=mysql_query("select * from users where userId='$uname' and pwd ='$pwd' ");
:
$query=mysql_query("SELECT * FROM users WHERE pwd ='$pwd' AND (userId = '$uname' OR PhoneNum = '$uname')");
它将取$uname值并搜索Userid列和Phone Num列以查找匹配。请注意,PhoneNum是表中的列名。
你的数据库也有被攻击的风险。MYSQL注射。