![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
以下を「sample.php」で保存しサーバー上で実行すると
「ログアウト」ボタンを【2回押さないと】セッションが切れないですが、なぜでしょうか。
ここでつまづいて、半日これで格闘してます。
あと、
header("Location: index.php . '?' . $_SERVER['QUERY_STRING']");
みたいな書き方がエラーになりますが、うまい書き方はありませんか。
GETで「index.php?word=keweord&year=2014」
みたいなやつを飛ばす先でも引き継ぎたいという目的です。
よろしくお願い致します。
<?php
session_start();
//「ログアウト」ボタンが押されてたらセッションを破壊
if ($_POST["logout"] != "") {
session_destroy();
header("index.php");
}
//ログインパスワードが正しければだったらセッション$_SESSION["pw"]を1にしてその後に続く条件分岐に活用
if ($_POST["login"] != "") {
$mypassword = "1234";
if ($mypassword == $_POST["pwd"]) {
$_SESSION["pw"] = 1;
} else {
$logerr = "エラー";
}
}
?>
<html><body>
<form method="post" action="sample.php">
<?php if ($_SESSION["pw"] == 1 ) { ?>
<input type="text" name="pwd" value="ログイン中">
<input type="submit" name="logout" value="ログアウト">
<?php } else { ?>
<input type="password" name="pwd" value=""></td>
<input type="submit" name="login" value="ログイン"></td>
<?php }
echo $logerr;
?>
</form>
</body></html>
No.1ベストアンサー
- 回答日時:
>header("index.php");
header("Location:index.php");
としたいのでしょうか?
>header("Location: index.php . '?' . $_SERVER['QUERY_STRING']");
クォーテーションがおかしいでしょ?
$qs=$_SERVER['QUERY_STRING']!==""?("?".strip_tags($_SERVER['QUERY_STRING'])):"";
header("Location:x.php{$qs}");
的な書き方の方がよいのでは?
yamabejpさん、いつもお世話になります。
>としたいのでしょうか?
すみません、おっしゃるとおりでした。
>的な書き方の方がよいのでは?
ご教示のコードで元質問のすべてが解決しました・・・一生かかっても思いつかないような。
今までの悩みがうそみたいに快適です、ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- PHP php ログイン 1 2022/11/01 00:24
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テキストボックスにデータベー...
-
FORMで送信ボタンと戻るボタン...
-
チェックボックス + フリーワー...
-
データ送信をボタンを押さずに...
-
xamppでformによるデータの送信...
-
PHP table内、<a href使って su...
-
onedrive にexcelファイルをア...
-
フォントの色を変えるには?
-
トランザクションが原因?DBに...
-
「@$変数」の「@の意味は?」
-
apache・phpが起動しない・・・
-
PHPの設定で、 エラーが発生し...
-
VBSの「MsgBox」について
-
.phpと.incファイルの違いはな...
-
別ファイルの変数を呼び出した...
-
CFileDialogの最初のディレクト...
-
【PHP】declare命令で”Fatal er...
-
PHPのif文でその処理を途中で抜...
-
URLが.PHPってどういう...
-
.phpファイルが、表示されない
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
form actionで二つ送信先を指定...
-
データ送信をボタンを押さずに...
-
PHPでε(イプシロン)のような...
-
FORMで送信ボタンと戻るボタン...
-
inputタグでphpを呼び出す際、...
-
別のファイルへ値を受け渡す方法
-
テキストボックスにデータベー...
-
ボタンのクリック数を合計保存...
-
リクエストメソッド
-
PHPとCSVで簡易データベースな...
-
Auth認証エラー
-
【PHP】ページを更新すると勝手...
-
ワンクリックしかできないクリ...
-
PEARでのAuth認証について
-
multipart/form-dataを使ったデ...
-
戻れないです
-
PEAR Image_QRCodeのエラー
-
header(Location: next.php) だ...
-
受け取ったパラメータを次のphp...
-
【初歩】ログアウトを【2回押さ...
おすすめ情報