Javaをプリプロセッサとして使用する方法がわかりませんが、基本的な考え方は次のとおりです。
- Javaを使用してPOSTから情報を取得します
- これを永続的な場所に保存します(PHPではセッション情報を使用します。Javaにはおそらく似たようなものがあります)
- ユーザーが別のページにアクセスするたびに、永続ストアから名前を取得してサイドバーに挿入します。
JavaではなくJavascriptを意味する場合は、状況が異なります(Javascriptに永続的なストアがあるかどうかはわかりません)が、これがお役に立てば幸いです。PHPでそれを行っている場合は、デモンストレーション用の簡単なスクリプトを作成できます。あなたが望むなら、私はまだそうすることができました、それはいくつかの役に立つかもしれません。
編集:
これをコメントに追加しますが、スペースがありません。とにかく、私はPHPスクリプトを作成しました(なぜ500エラーが発生したのか疑問に思ってかなりの時間を費やしましたが、閉じ括弧を忘れたことがわかりました)。これはJavaScriptではありませんが、同じ基本的な考え方であるため、コードの記述に役立つことを願っています。スクリプトは本番環境でここにあります。起源:
<?php
session_start(); // Start the session so we can use session variables
if(isset($_POST['first_name'])) // Assume that if the user filled out their first name they filled out everything
{
// Assign values based off the POST values
$_SESSION['first_name'] = $_POST['first_name'];
$_SESSION['last_name'] = $_POST['last_name'];
$_SESSION['age'] = $_POST['age'];
$_SESSION['loggedin'] = true; // Used to tell if the user's logged in or not
}
$first_name = $_SESSION['first_name']; // Read the first name from session data
$last_name = $_SESSION['last_name']; // Read the last name from session data
$age = $_SESSION['age']; // Read the age from session data
$loggedin = $_SESSION['loggedin'];
if(!$loggedin) // If the user isn't logged in, display the login form
{
?>
<html>
<head>
<title>Test script</title>
</head>
<body>
<form action="test.php" method="post">
First Name: <input type="text" name="first_name" />
Last Name: <input type="text" name="last_name" />
Age: <input type="text" name="age" />
<input type="submit" />
</form>
<?php
}
else // Otherwise, say hello!
{
echo "Hello, " . $first_name . " " . $last_name . "! You are " . $age . " years old!";
}
?>
</body>
</html>
これは、PHPでセッションを開始し、そこに値を格納することを意味します。あなたはPOSTとは何かをよく知っているようですので、$_POSTはPOSTを介して送信された値を格納すると言います。$ _SESSIONは、セッションデータの配列です。これらは両方とも連想配列であるため、場所ではなくキーに基づいて格納されます(つまり、$a['hello']と$a[2])。セッションを開始した後、POSTからセッションデータに値を読み取り、次にセッションデータからローカル変数に値を読み取ります(これは最善の方法ではありませんが、デモンストレーションには機能します)。次に、ユーザーがログインしているかどうかに基づいて、挨拶またはログインフォームのいずれかが表示されます。
これと同じ考え方を、Cookieを使用するJavascriptに適用できます。私はJavascriptに精通していないので、コードだけでどれだけ役立つかわからないので、Cookieに関するこのチュートリアルにリンクします。ページの読み込み時にCookieを確認し、設定されていない場合は設定し、設定されている場合はそこからデータを読み込むという考え方です。特に私のコードを使ってあなたを助けることができれば、それはそれほど難しいことではないはずです。