0

ログアウトをクリックするとログアウトしてからページを更新するログインページを作成しようとしていますが、JavaScript $.get が実行されるたびに、php コードは実行されませんが、ページは更新されます。 . 助けていただければ幸いです。

index.php

   <script type="text/javascript" src="js/jquery-1.8.3.js"></script>
   <script type="text/javascript">
    function logOut() {
            $.get("logout.php");
            location.Reload();
            return false;
        }
   </script>
   <a href="#" onclick="logOut();">Log Out</a>

logout.php

<?php
    setcookie('username', '', 0);
    setcookie('password', '', 0);
?>
4

4 に答える 4

4

成功時に更新を追加するか、少なくとも呼び出しが終了するまで待つ必要があります。

  <script type="text/javascript" src="js/jquery-1.8.3.js"></script>
   <script type="text/javascript">
    function logOut() {
            $.get("logout.php" , returndata , function() {
            location.Reload(); });
        }
   </script>
   <a href="#" onclick="logOut();">Log Out</a>

setcookie もすぐに削除されるように変更します。一般的な方法は、過去のタイムスタンプを入力することです:

setcookie('cookiename',0,( time() - 3600 ));
于 2013-01-01T17:05:58.103 に答える
3

PHP Cookie に php を使用するのではなく、javascript を使用して Cookie を削除しないでください。

于 2013-01-01T17:11:47.617 に答える
1

によるとsetcookie

setcookie('username', '', 0);

セッションの終了時に有効期限が切れます

expire
Cookie の有効期限が切れる時間。これは Unix タイムスタンプなので、エポックからの秒数です。つまり、time() 関数に有効期限が切れるまでの秒数を加えて、これを設定する可能性が高くなります。または、mktime() を使用することもできます。time()+60*60*24*30 は、Cookie が 30 日で期限切れになるように設定します。0 に設定するか省略した場合、Cookie はセッションの終了時 (ブラウザーが閉じるとき) に期限切れになります。

Cookie を削除する場合は、次の値以外の値を使用する必要があります。0

setcookie('username', '', 1);
于 2013-01-01T17:17:24.650 に答える