【发布时间】:2013-09-26 18:46:30
【问题描述】:
我知道我可以连接到数据库。在我修改我的代码之前,我已经检查过了。
当管理员登录时,我想重定向到tableedit.php,但如果用户不是管理员,我想重定向到tableuser.php。
这是错误:
警告:mysql_fetch_array() 期望参数 1 是资源,字符串在第 47 行的 C:\xampp\htdocs\joy\inventory\login.php 中给出 查询失败
代码如下:
//Create query
$qry="SELECT * FROM user WHERE username='$username' AND password='".md5($_POST['password'])."'";
while($row=mysql_fetch_array($qry));
$result = $row['username'];
{
//Check whether the query was successful or not
if($result) {
if(mysql_num_rows($result)== 'admin'){
session_regenerate_id();
$member = mysql_fetch_assoc($result);
$_SESSION['SESS_MEMBER_ID'] = $member['id'];
$_SESSION['SESS_FIRST_NAME'] = $member['username'];
$_SESSION['SESS_LAST_NAME'] = $member['password'];
session_write_close();
header("location: tableedit.php");
exit();
}
elseif(mysql_num_rows($result) != 'admin') {
//Login Successful
session_regenerate_id();
$member = mysql_fetch_assoc($result);
$_SESSION['SESS_MEMBER_ID'] = $member['id'];
$_SESSION['SESS_FIRST_NAME'] = $member['username'];
$_SESSION['SESS_LAST_NAME'] = $member['password'];
session_write_close();
header("location: tableuser.php");
exit();
} else {
//Login failed
$errmsg_arr[] = 'Username and password not found.';
$errflag = true;
if($errflag) {
$_SESSION['ERRMSG_ARR'] = $errmsg_arr;
session_write_close();
header("location: index.php");
exit();
}
}
} else {
die("Query failed");
}}
【问题讨论】:
-
坦率地说,代码是一团糟。在寻求帮助之前,请尝试阅读 php 手册php.net/docs.php
标签: php mysql sql database session