-1

現在、mysql プロジェクトをクライアント用の sqlsrv に変換していますが、問題が発生しました。Php は、実際には $query_pass が宣言されているときに予期しないものであると不平を言っています。mysql を使用したときに機能しましたが、問題がリモートでどのように関連しているのかわかりません。コードは次のとおりです。

    <?php

session_start();
ob_start();

?>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<form action="<?php $current_file ?>" method="post">
        E-post: <input type="text" name="username"/><br>
        Lösenord: <input type="password" name="pass" /><br>
        <input type="submit" value="Logga in"/>
        </form><form action="http://localhost/update.php">
    <input type="submit" value="Skapa lösenord">
</form>

<?php

if(isset($_POST['username'])&&isset($_POST['pass']))
{
    $username = $_POST['username'];
    $password = $_POST['pass'];

    if(!empty($username)&&!empty($password))
    {

        $query = "SELECT login_id, password FROM users WHERE email = '$username'";
        $row = sqlsrv_fetch_array( $query, SQLSRV_FETCH_ASSOC)
        $query_pass = $row['password'];
        $_SESSION['id'] = $row['login_id']

        if($row && ($query_pass == NULL))
        {
            $next = "http://localhost/update.php";
                header('Location: '.$next);


        }
        else
        {
            if((sqlsrv_num_rows($query_run) == 0) || $query_pass != $password)
            {
                echo 'Ingen matchning av lösenord och användare hittad.';
            }else{
                $next = "http://localhost/title_choice.php";
                header('Location: '.$next);
            }
        }

    }else{
        echo "Användarnamn och lösenord behövs.";
    }

}

ob_end_flush();
?>
4

2 に答える 2

4

;次の行にa がありません。

$row = sqlsrv_fetch_array( $query, SQLSRV_FETCH_ASSOC)
于 2014-01-07T15:00:52.897 に答える
1

また、

$_SESSION['id'] = $row['login_id']

が必要です。

于 2014-01-07T15:03:20.897 に答える