0

画像をクリックしているときにセッション変数を変更する必要があります。

そこで、関連する写真にクラスを追加しました(写真はフラグです)。ウェブサイトの翻訳用です。

私のウェブサイトでは、言語はセッション変数を使用して定義されており、デフォルトでは英語に設定されています。

だから人々はそれらを変えることができます

これが私が得る一種のイメージ<img src="images/fr.png" title="French" alt="French" class="flag" id="fr">です。だから私はクラスとIDを追加しました、

次に、jquery を使用して次のコードを記述し、リロードなしで同じページに作成しました。

<script type="text/javascript">
            $(document).ready(function () {
                $("img.flag").click(function(){
                    // Get the src of the image
                    var src = $(this).attr("id");

                    // Send Ajax request to backend.php, with src set as "img" in the POST data
                    $.post("lib_php/session.php", {"lang": src});
                })
            })
        </script>

投稿を送信するページには、次のコードがあります。

<?php
session_start();
    // do any authentication first, then add POST variable to session
    $_SESSION['lang'] = $_POST['lang'];
?>

問題は、何も変わらず、すべてが同じままであることです。

どこが間違っているのかわからない

どんな助けでも大歓迎です。

4

3 に答える 3

2

上記のコードを見ただけでは、それを判断するのは困難です。私が知る限り、構文は jQuery と PHP の両方で問題ないようです。あなたの問題は、次のいずれかによって引き起こされると思います。

  • 正しいページに情報を投稿していません。確認方法: PHP でecho $_POST['lang']
  • session_start()すべての PHP ページに含まれているわけではありません。
  • jQuery が適切に組み込まれていないため、投稿すら行っていません。ブラウザのコンソールをチェックして、POST 呼び出しが実際に実行されているかどうかを確認してください。
于 2013-08-19T07:53:23.207 に答える