-6

我用 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";
?>
4

1 回答 1

0

改变这个;

$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 注入。

于 2013-03-05T12:56:24.417 回答