<?php
session_start();
include "conn.php";
$username = $conn->real_escape_string($_POST['username']);
$password = $conn->real_escape_string($_POST['password']);
$query = "SELECT * FROM admin WHERE username = '$username' AND password = '$password' ";
$hasil = $conn->query($query);
$hitung = $hasil->num_rows;
if($hitung){
$cetak = $hasil->fetch_assoc();
extract($cetak);
$_SESSION['id_users'] = $id_users;
echo '<script>window.alert("Welcome you had been logged in");windows.location=("../work/admin.php");</script>';
}
else{
echo '<script>window.alert("Sorry,username or password is wrong");windows.location("../work/login.php");</script>';
}
?>
答案 0 :(得分:0)
12> $hasil = $conn->query($query); 13> 14> $hitung = $hasil->num_rows;
$hasil
不是对象。 $hasil
是->query
对象的$conn
方法部分的内容。
您的错误:
尝试在第14行的C:\ wamp \ www \ work \ p_login_admin.php中获取非对象的属性
所以这应该告诉你,在第14行,源项不是一个对象,但你将它视为一个对象。
解决方案:
1)您几乎肯定不希望$hasil
变量的内容,而是$conn
对象的原始内容。在不知道您的$conn
对象包含什么或类包含什么的情况下,甚至不知道您的输出是如何选择的,依赖于您尚未与我们分享的这些细节。
然而,解决方案的细节取决于我们正在使用的确切元素和结构。
(另请确保您的问题包含可以提供解决方案所需的所有详细信息。)
修改强>
查看Fatal error: Call to undefined function new_mysqli() in C:\wamp\www\work\conn.php on line 8向我展示了conn.php
脚本的开头。所以
$hitung = $conn->num_rows;
这应该直接从MySQLi对象(在conn.php文件中启动)给出正确的结果。
另请注意,查询数据已返回$hasil
将无法在PHP中使用,因为您仍需要对检索到的数据运行 MySQLi Fetch 方法。
答案 1 :(得分:0)
错误在于此行$query = "SELECT * FROM admin WHERE username = '$username' AND password = '$password' ";
管理员不应该是用户。
<?php
session_start();
include "conn.php";
$username = $conn->real_escape_string($_POST['username']);
$password = $conn->real_escape_string($_POST['password']);
$query = "SELECT * FROM admin WHERE username = '$username' AND password = '$password' ";
$hasil = $conn->query($query);
$hitung = $hasil->num_rows;
if($hitung){
$cetak = $hasil->fetch_assoc();
extract($cetak);
$_SESSION['id_users'] = $id_users;
echo '<script>window.alert("Welcome you had been logged in");windows.location=("work/admin.php");</script>';
}
else{
echo '<script>window.alert("Sorry,username or password is wrong");windows.location("work/login.php");</script>';
}
?>