Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP/SQL登录表单问题_Php_Html_Mysql_Forms_Login - Fatal编程技术网

PHP/SQL登录表单问题

PHP/SQL登录表单问题,php,html,mysql,forms,login,Php,Html,Mysql,Forms,Login,我对PHP比较陌生,但我知道一些。我试图建立一个登录系统,但登录功能似乎不工作。我正在执行一个checkrows命令并检查它是否为=到1,但它表示它不是=到1。 警告:mysql_num_rows()希望参数1是资源,对象在第25行的C:\xampp\htdocs\message\login.php中给出 我知道这是因为它没有找到匹配的值,但我检查了数据库,用户名和密码肯定在那里 任何帮助都将不胜感激 代码如下: <html> <head> <title>

我对PHP比较陌生,但我知道一些。我试图建立一个登录系统,但登录功能似乎不工作。我正在执行一个checkrows命令并检查它是否为=到1,但它表示它不是=到1。 警告:mysql_num_rows()希望参数1是资源,对象在第25行的C:\xampp\htdocs\message\login.php中给出

我知道这是因为它没有找到匹配的值,但我检查了数据库,用户名和密码肯定在那里

任何帮助都将不胜感激

代码如下:

<html>

<head>

<title>Login - Messaging</title>

</head>

<body>
<?php include "connect.php"; ?>
<?php include "functions.php"; ?>
<?php include "header.php"; ?>

<div>
<form method="post">
<?php 
if(isset($_POST['submit'])){
$username=$_POST['username'];
$password=$_POST['password'];
if($username === '' || $password === ''){
    $message="One or more of the fields are empty";
} else {
    $password1=md5(hash("sha512",$password));
    $checklogin = mysqli_query($con,"SELECT * FROM `users` WHERE `username`='$username' AND `password`='$password1'");
    $check2=mysql_num_rows($checklogin);
    if($check2==1){
        $message="Successful!"; 
        header("location: index.php");
    } else {
        $message="Incorrect Username or Password";
    }
}
echo "<p>$message</p>";
}
?>
Username: <input type="text" name="username" /><br>
Password: <input type="password" name="password" /><br>
<input type="submit" name="submit" value="Login" />
</form>
</div>

</body>

</html>

登录信息

您将
mysql\u*
mysql\ui*
混合使用,需要检查查询错误

更改这些行:

$checklogin = mysqli_query($con,"SELECT * FROM `users` WHERE `username`='$username' AND `password`='$password1'");
$check2=mysql_num_rows($checklogin);
致:


你在mysqli和mysqli之间切换吗?mysqli和mysqli的混合似乎就是我做的。非常感谢,效果很好@波塞冬:如果它有效,那么接受我的回答:)对不起,我只是接受了,它在发布问题后10分钟才让我接受,因为你回答得很快(再次感谢!:D)-它不让我接受!
$checklogin = mysqli_query($con,"SELECT * FROM `users` WHERE `username`='$username' AND `password`='$password1'") or die(mysqli_error($con));
$check2=mysqli_num_rows($checklogin);