0

私はphp / ajaxログインを行っているので、ページリダイレクトはjavascript(ajax)です。私はすでにそれをajaxの方法でリダイレクトできます(dbなどに接続せずに)が、dbを追加し、phpでセッションを追加すると、このphpエラーが発生しました。

注意: 未定義のインデックス: 22 行目の D:\wamp\www\bday_app\login.php のユーザー名

これが私のコードです: index.php (ログイン フォームと ajax コードを含む) を取得しました。ajax コードは login.php (POST メソッドを使用) を使用してユーザー名/パスワードを渡します。私のlogin.phpの内容は次のとおりです。

if(mysql_num_rows($query_results)==1){
    $row = mysql_fetch_array($query_results);
    $_SESSION['username'] = $row['username'];
    $_SESSION['nickname'] = $row['nickname'];
    $_SESSION['firstname'] = $row['first_name'];
    $_SESSION['middlename'] = $row['middle_name'];
    $_SESSION['lastname'] = $row['last_name'];
    echo 'Login successful! Redirecting...';
    //header("Location: bday_app_home.php");
}else{
    echo 'Invalid username/ password.';
    //header("Location: index.php");
}

エラーの 22 行目は次のとおりです。

$_SESSION['username'] = $row['username'];

無効なユーザー名/パスワードがあった場合、問題はありません。index.php にメッセージが表示されますが、ユーザー名/パスワードが正しい場合、この未定義のインデックス エラーが発生します。

ユーザー名/パスワードが POST 経由で受信されたため、理由はわかりません。画像にエコーされた値 (mars1、mars123) を参照してください。

助けてください... :(

ありがとう。

4

2 に答える 2

0

スクリプトの上に session_start() を指定したことを確認してください。

また、次のことをしようとしていないことを確認してください。

echo 'Login successful! Redirecting...';
header("Location: bday_app_home.php");

あなたのスクリプトで。header() 関数によって行われるリダイレクトの前に一部の出力が行われるため、これは機能しません。

于 2012-10-17T14:42:08.110 に答える