Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP未定义的mysqli_结果_Php_Mysql - Fatal编程技术网

PHP未定义的mysqli_结果

PHP未定义的mysqli_结果,php,mysql,Php,Mysql,我正在检查数据库是否使用了用户名,但在第9行,我一直得到这个错误“调用未定义的函数mysqli_result() <? $connect = mysqli_connect('localhost', 'root', '', 'mydb'); if(isset($_POST['username'])){ $username = mysqli_real_escape_string($connect, $_POST['username']); if (!empty($username)){

我正在检查数据库是否使用了用户名,但在第9行,我一直得到这个错误“调用未定义的函数mysqli_result()

<?
$connect = mysqli_connect('localhost', 'root', '', 'mydb');
if(isset($_POST['username'])){
  $username = mysqli_real_escape_string($connect, $_POST['username']);
  if (!empty($username)){
    $username_query = mysqli_query($connect, "SELECT COUNT ('id') FROM 'users' WHERE 'username' = '$username'");
    $username_result = mysqli_result($username_query, 0);

    if ($username_result == 0){
        echo 'Available.';
        } else if($username_result == 1){
        echo 'Username unavailable.';
    }
  }
}
?>

您应该使用该类的其他函数,例如
mysqli\u fetch\u assoc

也就是说,最好使用准备好的语句来绑定和检索数据,例如

$_stmt = $_mysqli->prepare('SELECT `permissies` FROM `gebruiker` WHERE (`id`=? AND `pwdenc`=?)');
$_stmt->bind_param('is', $_cred[0], $_cred[1]);
$_stmt->execute();
$_stmt->bind_result($perm);

为什么不使用?当使用
mysqli
时,您应该使用参数化查询并向查询中添加用户数据。千万不要使用字符串插值来完成此操作,因为忘记转义一个值就足以在应用程序中留下一个巨大的值。该函数不存在,-您似乎在混合过程和对象方面mysqli(mysqli_结果是对象接口的一部分)。但是请阅读其他人给出的建议。是一个类,而不是函数。调用后,您可以使用以下函数迭代结果集。谢谢,这正是我所需要的。我忘了我已经用这些函数编写了PHP代码,所以我不得不用这些函数替换教程中的代码。
$_stmt = $_mysqli->prepare('SELECT `permissies` FROM `gebruiker` WHERE (`id`=? AND `pwdenc`=?)');
$_stmt->bind_param('is', $_cred[0], $_cred[1]);
$_stmt->execute();
$_stmt->bind_result($perm);