php - 警告 : mysql_result() [function. mysql-result]:无法跳转到 MySQL 结果索引 2 上的第 0 行

标签 php mysql restrict

我正在努力做到这一点,以便我可以将“员工面板”限制为“member_level”为“3”的用户,以便其他人被重定向到 account_page.php,但我目前收到一个错误,该错误仅出现 1 小时以前,这是突然冒出来的,我没有做任何更改,它只是出现了。

这是员工面板的代码:

<?php
    ob_start();
mysql_connect('localhost', 'u1908470_cms', 'BeingX1309X')or die("Error: ".mysqlerror());
mysql_select_db('u1908470_cms'); 

$query1 = mysql_query("SELECT 'member_level' FROM `users` WHERE `username` = '" . mysql_real_escape_string ($_SESSION['user']['username'])."'");
$query2 = mysql_result($query1,0,'member_level') or die(mysql_error());

switch ($query2)
{
case 3: 
  {
  echo "<p>Now Logged into Staff Panel!</p>";

  }
  break;

case 2:
  {
  header("location: http://www.cookiedenied.com/account_page.php"); 
  }
  break;

case 1:
  {
  header("location: http://www.cookiedenied.com/account_page.php"); 
  }
  break;

}
?>

最佳答案

正确转义字段和表名

代替

    SELECT 'member_level', ....

...请使用...

    SELECT `member_level`, ....

验证您的查询。

像这样重写你的代码:

$SQL = "SELECT `member_level`
    FROM `users` 
    WHERE `username` = '" 
    . mysql_real_escape_string($_SESSION['user']['username'])
    . "'";

$MyQ = mysql_query($SQL);
$MyR = mysql_result($MyQ,0,'member_level') or die(mysql_error());

...和 ​​var_dump($SQL); 来查看您的语句是否有效。在使用另一个 MySQL 工具(Workbench、phpMyAdmin、SQLyog 或其他工具)执行它时检查它是否生成任何结果。也许 $_SESSION 变量设置不正确或类似的东西,你会通过这种方式发现。

请改用 MySQLi 或 PDO。

来自手册:

Use of the mysql extension is discouraged. Instead, the MySQLi or PDO_MySQL extension should be used.

重新格式化您的开关-Block。

与您的问题无关,但您的 switch-Block 看起来过于复杂,无法更轻松地完成某些事情。试试这个:

switch ($query2) {
    case 3: 
        echo "<p>Now Logged into Staff Panel!</p>";
        break;
    default:
        header("location: http://www.cookiedenied.com/account_page.php"); 
}

关于php - 警告 : mysql_result() [function. mysql-result]:无法跳转到 MySQL 结果索引 2 上的第 0 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13135129/

相关文章:

php - 如何显示特定div中的mysql表?

mysql - 客户端不支持服务器请求的认证协议(protocol);考虑升级MySQL客户端

c - scanf ("%d%d", &x, &x) 是否定义明确?

php - 限制对php文件的访问

php - 部分上传,仅上传 header

PHP PDO 尝试在登录时更改导航栏

mysql - Ruby on Rails MySQL #08S01Bad handshake - 降级 MySQL?

php - 如何在 PHP 中使用 filemtime 函数?

ios - 如何限制不支持空投功能的iOS设备?

php - 在 PHP 中将字符串转换为 UTF-8 的最佳方法是什么?