2017-01-23 10 views
0

PHPのヘッダがリダイレクトされない理由を尋ねたいのですが、すべての文が正しく機能しています。PHP:ヘッダが指定された場所にリダイレクトされていません

のindex.php:

<form action="php/Api/verifyUser.php" method="post"> 
    username: <input type="text" name="username"><br> 
    password: <input type="text" name="password"><br> 
    <input type="submit"> 
</form> 

PHP/API/verifyUser.php:

<?php 
include "../userDAO.php"; 
session_start(); 
//$content = file_get_contents("php://input"); 
//$json_data = json_decode($content, true); 
$username = $_POST["username"]; 
$password = $_POST["password"]; 
$userDAO = new UserDAO(); 
$process = $userDAO->verifyUser($username, $password); 
if($process["state"] == 1) { 
    echo "Successfully Log in!"; 
    header("location : ../../homepage.php/"); 
} else { 
    echo "failed to Log in!"; 
    header("location : ../../login.php"); 
} 
?> 

注:userDAOのinstancessが正常に動作している

、状態が "1" であります認証が真の場合

Warning in verifyUser.php: HTMLドキュメントの文字エンコードが宣言されていません。ドキュメントにUS-ASCII範囲外の文字が含まれている場合、一部のブラウザ設定でドキュメントが文字化けして表示されます。ページの文字エンコーディングは、文書または転送プロトコルで宣言する必要があります。

上記のコードは、「正常にログインしました!」というメッセージを表示します。条件がfalseの場合は、失敗したメッセージと同じメッセージを返します。しかし、ヘッダーはその場所にリダイレクトされていませんか?ここで問題と思われるものは何ですか?ありがとう。

+3

出力の前にヘッダーを送信する必要があります。ヘッダーの前に "エコー"を削除すると正常に動作します。 – Kaylined

+0

'if($ process == 1){ ヘッダー(" location:../../homepage.php/ "); } else { header( "location:../../login.php"); } ' –

+0

' display_errors'をオンにするかエラーログをチェックすると、 "ヘッダはすでに送信されました"というエラーが表示されます。続きを読む:http://stackoverflow.com/questions/8028957/how-to-fix-headers-already-sent-error-in-php –

答えて

0
<?php 
include "../userDAO.php"; 
session_start(); 
//$content = file_get_contents("php://input"); 
//$json_data = json_decode($content, true); 
$username = $_POST["username"]; 
$password = $_POST["password"]; 
$userDAO = new UserDAO(); 
$process = $userDAO->verifyUser($username, $password); 
if($process["state"] == 1) { 
    header("location : ../../homepage.php/"); 
} else { 
    header("location : ../../login.php"); 
} 
?> 
+0

メッセージを表示したい場合は、ここで$ _SESSION ['msg']などのSessionなどで設定し、homepage.phpに表示してログインします.php。それがあなたのために働くことを願っています。 – Abbas

関連する問題