ユーザーがレストランのテーブルを予約できるようにするためのコードを書いています。しかし、私のクライアントは、ユーザーがレストランのメニューからいくつかのアイテムを選択してから戻ってきてテーブルを予約できるようにするように私に求めました。ユーザーがメニューを選択したくない場合は、その手順を無視することができます。
そのために、「メニューを選択しますか?」というメッセージを印刷しました。次に、メニューページへのハイパーリンク。iavascript onClickイベントを使用して、ユーザーがクリックしたかどうかをリッスンし、クリックした場合は関数setsessionを呼び出して、Webサイトでのユーザーのアクティビティを追跡するようにセッションを設定しました。ページの上部で関数を宣言しました。like-
<script>
function setsession(){
<?php $_session['reservation']= TRUE;
}
</script>
<form action="" method="post">
<p>Do you want to choose menu? Then <a href="somepage.php" onClick="setsession()">Click here.</a></p>
<p>rest of my code</p>
<p>confirm to reserve.</p>
<a href="javascript:{}" onclick="return Validate();submitform();">Confirm</a>
</form>
<?php if(isset($addnew) && !$error) ?>
<div class="success">
<p>sucess</p>
<?php $_SESSION['reservationprocess'] = FALSE;?>
</div>
<?php } ?>
すべてがうまくいきました。ハイパーリンクをクリックすると、セッション変数が正常に実行されました。そして、確認ボタン(上のハイパーリンク)をクリックすると、データがデータベースに正常に保存され、成功メッセージが表示され、セッションの設定が解除されます。
しかし、問題は、セッションが再設定された方法と理由がわからないことです。セッションの設定を解除しようとしましたが、失敗しました。私の残りのコードはうまく機能していて、私が知る限り、問題はありません。私はそれをテストしました。専門家からの解決策はありますか?前もって感謝します。