ユーザメッセージを受け取り、それを受信者に送信するフォームがあります。 PHP側では、私は3つの変数:$senderid
,$recipientid
および$messageid
を持っています。これまでのところ、私はAjaxのスクリプトにそれを渡すために残りのようにVAR SENDERID = $('#senderid').val();
を使用しています例PHP変数を隠された入力なしでAjaxに渡します。
<input type="hidden" id="senderid" value="<?php echo $senderid; ?>" />
<input type="hidden" id="recipientid" value="<?php echo $recipientid; ?>" />
<input type="hidden" id="messageid" value="<?php echo $messageid; ?>" />
<textarea id="message" name="message" rows="5" cols="10"></textarea>
のために、しっかりと上の隠し入力を使用してきました。これは正常に動作します。私が気に入らないのは、隠された入力が隠されていても変更できるということです。誰かが$senderid
,$recipientid
、$messageid
の値をFirebugで変更できます。もし誰かがそれをしたら、それは私のメッセージシステムを完全にねじ込むでしょう。隠れた入力を使わずにAjaxに変数を渡す方法はありますか?
クライアントは常にHTML/JavaScriptを編集できます。サーバー側の検証を実装する必要があります。 – spidEY
なぜセッション変数を使用しないのですか? – YonoRan
クライアント側から来るものは、チェックしないとシステムが壊れる可能性があります。送信者が誰であるかを確認する必要がある場合は、変数はサーバー側、おそらく$ _SESSION変数にとどまる必要があります。 – Andri