いくつかの計算を行うために、デフォルトでphpで呼び出してユーザーの入力フィールドに表示する変数がありますが、ユーザーは値を変更できます。値を取得するためにJavaScriptを使用していますが、更新されません。その値は常にデフォルト値を保持します。
1 に答える
うーん...ここにいくつか...
まず、コードはありません。ですから、あなたが何をしようとしているのかわかりません。
したがって、ある種のグローバル変数について話していると仮定します($foo = 10
スクリプトのどこかで宣言しただけでは、それを取得できません。スクリプトは、ページが出力されるまでに解析を完了しています)。
$_COOKIE['some_value']
では、変更したい変数としてを持っているとしましょう。アイデアは、それを更新するいくつかのphpファイルにajax呼び出しを行うことです。だからあなたは持っているかもしれません
//change_value.php
setcookie($_GET['cookie_name'], $_GET['new_value']);
また、ライブラリ (ここでは jQuery) を使用して ajax 呼び出しを行うこともできます。
$.ajax({
url: 'change_value.php',
data: 'cookie_name=bar&new_value=' + new_value //new value is a variable in javascript,
success: function(data) {
alert("Success");
}
});
ここでjQueryを使用したajaxの詳細を読むことができますhttp://api.jquery.com/jQuery.ajax/
上記の例では、 によって出力された戻りデータも取り戻されchange_value.php
ます。そのため、change_value.php を更新して、指定されている場合は値を変更し、(新しい) 値に関係なく出力することができます (取得できるようになります)。
もちろん、Cookie を使用すると、JavaScript で直接行うことができますが、これは単なる例です。セッションがある場合は、同じアプローチを使用できます。