我是PHP的初学者,所以这个登录脚本会有很多安全漏洞。不过不要担心。一旦我得到修复,我会得到修复。这是我的登录PHP脚本。PHP登录脚本未选择行
<?php
$error='';
if(isset($_POST['submit'])){
if(empty($_POST['username']) || empty($_POST['password'])) {
$error = "Username or Password is Invalid";
echo "<script type='text/javascript'>alert('$error');</script>";
}
else {
$user = $_POST['username'];
$pass = $_POST['password'];
$servername = "localhost";
$username = "id1394453_users";
$password = "password";
$database = "id1394453_users";
$conn = mysqli_connect($servername, $username, $password, $database);
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$query = mysqli_query($conn, "SELECT * FROM Users WHERE user='username' AND pass='password'");
$rows = mysqli_query($conn, $query);
if (mysqli_num_rows($rows) == 1) {
header("Location: Home.html");
}
else {
$error = "Username of Password is Invalid";
echo "<script type='text/javascript'>alert('$error');</script>";
echo "<script type='text/javascript'>alert('$user');</script>";
echo "<script type='text/javascript'>alert('$pass');</script>";
echo "<script type='text/javascript'>alert('$rows');</script>";
}
mysqli_close($conn);
}
}
?>
我已经检查,以确保它连接到MySQL数据库和所有的变量是正确的。当它到达线26
如果(mysqli_num_rows($行)== 1){
它需要的其他路径。这不是我想要的。正如你所看到的,我检查了$ rows是什么值,它什么也没有。因此,我将注意力转移到第25行
$ rows = mysqli_query($ conn,$ query);
我已经在测试$ conn以确保连接正常工作。所以这使我想到这是在第23行
$查询= mysqli_query定义的$查询veriable($康恩, “SELECT * FROM用户WHERE USER = '用户名' 并通过= '密码'”);
这是我认为有麻烦的地方。问题是我不确定它有什么问题。该表被称为“用户”,我想要的列被称为“用户名”和“密码”。嗯是的。我在这里做错了什么?
; *是否/将它?* – nogad
我希望这件事不是去现场 –