【问题标题】:PHP Warning: query and fetchPHP 警告:查询和获取
【发布时间】:2018-05-16 21:42:06
【问题描述】:

警告:mysqli_query() 至少需要 2 个参数,1 个给定 警告:mysqli_fetch_assoc() 期望参数 1 为 mysqli_result,给定为空

我也有这些警告,我该如何解决?

public static function checklogin() {
    mysqli_connect();

    $username = $_SESSION['USER'];
    $password = $_SESSION['PASS'];

    $query = "
        SELECT 
            `account`.`id`,
            `account`.`status`
        FROM `account`.`account`
        WHERE `account`.`login` = '".$username."'
        AND `account`.`password`='".$password."'
    ";
    $exec = mysqli_query($query);
    $row = mysqli_fetch_assoc($exec);
    if($row['status'] == 'OK&apos
    {
        return true;
    }
    else
    {
        return false;
    }
}

【问题讨论】:

  • 第二个是第一个导致的,第一个是你没有传递一个连接对象作为第一个参数造成的。
  • mysqli_connect 实际上返回的是你需要使用的连接对象。只是调用它而不将结果分配给任何东西是行不通的。
  • 查看 PHP 手册以获得更好的方法示例:php.net/manual/en/…
  • 我是一个真正的 php 爱好者,我只是想弄清楚如何解决这些问题以运行我的网站...继续 php.net 手册在我的情况下对我没有帮助,仍然谢谢你
  • 我不同意。我认为 PHP 手册对于任何使用 PHP 的人来说都是必不可少的资源,无论他们是不是业余爱好者。如果不使用它,您将陷入乏味的试错问题解决方法,并要求互联网上的陌生人为您调试代码。

标签: php mysqli parameters warnings connect


【解决方案1】:

您需要保存使用mysqli_connect 打开的数据库连接,并且为了实际连接到数据库主机配置。阅读连接文档here 以获得更好的解释。
使用数据库地址更新您的代码(确保您知道您的连接

$db=mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db");
if(!$db) {
  echo "ERROR connecting to my_db";
  return false;
}

// sanitize
$username = filter_var($_SESSION['USER'], FILTER_SANITIZE_STRING);
$password = filter_var($_SESSION['PASS'], FILTER_SANITIZE_STRING);

$query = "
    SELECT 
        `account`.`id`,
        `account`.`status`
    FROM `account`.`account`
    WHERE `account`.`login` = '".$username."'
    AND `account`.`password`='".$password."'
";
$exec = mysqli_query($db, $query);
$row = mysqli_fetch_assoc($exec);
...

看看mysqli_querydocs

【讨论】:

  • mysqli_query() 期望参数 1 为 mysqli,给定布尔值
  • 这是现在的问题
  • 你需要一个数据库 url:$link = mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db");
  • mysqli_connect(): (HY000/1129): 主机(ip)因为很多连接错误被阻塞;使用 'mysqladmin flush-hosts' 解除阻止
猜你喜欢
  • 1970-01-01
  • 2014-05-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-21
  • 1970-01-01
  • 2017-02-28
相关资源
最近更新 更多