美好的一天,我遇到上述错误,我无法找到适当的脚本..但这是发生错误的行..
$db = mysql_connect($mysql_server, $mysql_username, $mysql_password);
mysql_select_db($mysql_database, $db);
$sql = "SELECT password, fullname, active FROM ".$mysql_table." WHERE username = '".$_POST['username']."'";
$result = mysql_query($sql, $db) or trigger_error ( mysql_error ( ) );
if ($data = mysql_fetch_array($result))
{
if ($crypt_pass == $data['password'] && $data['active'] != 0)
{
$found = true;
$fullname = $data['fullname'];
}
else die(mysql_error());
}
mysql_close($db);
if($found == false)
{
header('Location: '.$error_page);
exit;
}
else
{
session_start();
$_SESSION['username'] = $_POST['username'];
$_SESSION['fullname'] = $fullname;
$rememberme = isset($_POST['rememberme']) ? true : false;
if ($rememberme)
{
setcookie('username', $_POST['username'], time() + 3600*24*30);
setcookie('password', $_POST['password'], time() + 3600*24*30);
}
header('Location: '.$success_page);
exit;
}
不过,这是一个登录表单..
谢谢!
答案 0 :(得分:0)
($data = mysql_fetch_array($result))
如果$ result是空数据集,则会触发此错误。 在执行此操作之前,请检查返回的行数是否> 0。
mysql_num_rows是您在尝试将其放入数组之前检查所返回的行的方法。