1

执行时

mysqli_bind_result();

我收到一条错误消息,提示“调用未定义的函数”。

我的代码如下所示:

$mysqli = new mysqli("localhost", "root", "", "*****");
if(isset($_POST['login'])){
    if($_POST['username']){
    if($_POST['password']){
    $username = $_POST['username'];
    $passwordtmp = $_POST['password'];
    $password = md5(md5($passwordtmp));
    //Connect to Database//
    if ($mysqli->connect_errno) {
            echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
    }
    //Check if user exist in database//
    $query = mysqli_query($mysqli,"SELECT * FROM users WHERE username = '$username'");
    $numrows = mysqli_num_rows($query);
    if($numrows == 1){
        if($stmt = mysqli_prepare($mysqli, "SELECT password FROM users WHERE username = '$username'")){
            mysqli_execute($stmt);
                    mysqli_bind_result($stmt,$passw);
                    while(mysqli_stmt_fetch($stmt)){
                        $pass = $passw;  
                    }

附加信息:

  1. 我使用与我的 mysql 数据库的相同连接将此代码从另一台计算机传输到我的笔记本电脑。

        $mysqli = new mysqli("localhost", "root", "", "*****");
    
    1. 我将确切的数据库复制到我的笔记本电脑上,我的电脑和笔记本电脑都在使用 wamp。

    2. 我想知道这是否可能是与数据库问题的连接,或者只是一个编码错误。但它在我原来的电脑上完美运行,没有任何问题。

先感谢您。我会感谢有用的答案。

4

1 回答 1

5

您可能正在使用 PHP > 5.4,因为该函数mysqli_bind_result已在 PHP 5.4 中删除。

将其更改为mysqli_stmt_bind_result应该可以解决您的问题。

mysqli_stmt_bind_result($stmt, $passw);
于 2013-01-21T21:42:41.823 回答