2017-07-03 9 views
0

POSTメソッドを使用するフォームでログインシステムを作成しました。このPOSTは、index.phpに含まれるlogin.phpに情報を送ります。 login.phpで、ユーザー名とパスワードがいくつかのjQueryコードを修正した場合、index.phpのメニュー項目をいくつか変更します。私の問題は、Firefoxが常に確認メッセージを送信する()ページを更新するときに、Firefoxは以前に実行された何らかのアクション(検索や注文の確認など)を繰り返す情報を送信する必要があります。) 。私はそれについて赤があり、私はこの問題は私がデータを送信するためにPOSTメソッドを使用していることを知っています。メッセージは表示されませんが、データは送信されませんが、一部の人々はGETメソッドを使用するように提案しました。あなたは解決策を提案できますか?ご協力いただきありがとうございます。Firefoxの確認メッセージは表示されません。

私のPHPコード:

$query1 = pg_query($conn, "SELECT * from users WHERE password = '$pswd' and name='$username' "); 


$arr_1 = pg_fetch_all($query1); 


$name_lenght= strlen($arr_1[0][name]); 
$pswd_lenght= strlen($arr_1[0][password]); 

if ($name_lenght > 0 && $pswd_lenght > 0){ 


$_SESSION ['user'] = $_POST['user']; 
$_SESSION ['password'] = $_POST['password']; 


echo "<script> 
$('#manu1').removeClass('hide').addClass('show'); 
$('#manu2').removeClass('hide').addClass('show'); 
$('#manu3').removeClass('hide').addClass('show'); 
</script>"; 
+0

単純な解決策は、遷移ページとリダイレクトを使用することです。 'login'というページがあなたのフォームのターゲットであるとしましょう。 'login'はフォームデータを扱い、ユーザーセッション(クッキーなど)を設定し、あなたのページにリダイレクトします。それを' user'と呼んでください。これは、リフレッシュ時に、 'user'をリフレッシュし、' login'ではリフレッシュしませんでした。これはフォームデータにバインドされていませんでした。だからブラウザはあなたにそれを再度提出するように頼んでいません – Kaddath

+0

https://en.wikipedia.org/wiki/Post/Redirect/Get – CBroe

答えて

0

代わりに出力自体を表示するので、あなたがログインしている後に表示されるはずのページへのリダイレクトを送信する必要がありますフォームを処理するスクリプト。これにより、新しいページがフォーム送信から切断されるため、フォームデータを再送信するかどうか尋ねることはありません。

$query1 = pg_query($conn, "SELECT * from users WHERE password = '$pswd' and name='$username' "); 
$arr_1 = pg_fetch_all($query1); 
if (!empty($arr_1)) { 
    $_SESSION ['user'] = $_POST['user']; 
    $_SESSION ['password'] = $_POST['password']; 
    header("Location: welcome.php"); 
    exit(); 
} 
+0

私はこのコードを私のIfステートメントに入れましたが、メッセージは表示されませんが文が実行されないドット。私はPHPで自分の投稿を編集しました。このコードはどこに置くべきですか? – bummm26

+0

ログインする前に動作していましたが、if文( 'if($ name_lenght> 0 && $ pswd_lenght> 0)')を実行したくないので、ログアウトボタンが表示されませんjQuery。 – bummm26

+0

長さをテストする理由は何ですか?私の答えのように、クエリが行を返すかどうかをテストするだけです。 – Barmar

関連する問題