惠们..
我有一个问题,我没有知道什么错误
我有验证页,在该页中它会检查组以识别用户
如果组为admin,则将显示adminpage。
如果该组是用户,则将显示用户页面。
情况:当我输入用户名和密码时,验证页面显示为空白页面...我不知道代码有什么问题...
伙计们..帮助我..
这是代码:
<?php
session_start();
if($_POST['id']!=null && $_POST['pass']!=null){
$username=$_POST['id'];
$password=$_POST['pass'];
$link=@mysql_connect('localhost','root')
or die("Could not connect".mysql_error());
if (!@mysql_select_db("fyp",$link)){
echo mysql_error();
}
$db_select = mysql_select_db('fyp',$link);
if (!$db_select) {
die("Database selection failed: " . mysql_error());
}
$sql="SELECT * from access where username='".$username."' AND password='".$password."'";
$result=mysql_query($sql);
if(!$result){
die(mysql_error());
}
$numrecord=mysql_num_rows($result);
if($numrecord>0){
if($group=="admin" ){
$_SESSION['id']=$username;
$_SESSION['pass']=$password;
$_SESSION['group'] = $row['group'];
mysql_close($link);
header("Location:adminpage.php");
}
elseif($group=="user"){
$_SESSION['id']=$username;
$_SESSION['pass']=$password;
$_SESSION['group'] = $row['group'];
mysql_close($link);
header("Location:userpage.php");
}
}
else{
mysql_close($link);
header("Location:login.php?error=2");
}
}
else{
header("Location:login.php?error=1");
}
?>
最佳答案
您没有使用mysql_fetch_array
或其他函数从数据库中实际获取行。尝试这个:
$numrecord=mysql_num_rows($result);
if($numrecord>0){
$row = mysql_fetch_array($result); ////////////
$group = $row['group'];
if($group=="admin" ){
$_SESSION['id']=$username;
$_SESSION['pass']=$password;
$_SESSION['group'] = $row['group'];
................
另外,您需要在查询中使用
mysql_real_escape_string
函数以避免安全问题。关于php - 验证页错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2346765/