對於輸入形式,我需要隨機輸入姓名和身份證
我創建的隨機值 $ token_hash =隨機
然後輸入字段
<input type="hidden" name="' .$token_hash .'" id="' .$token_hash .'" value="some_value">
下一頁以上輸入形式是php代碼來檢查從表單中獲得的值
echo $_POST[$token_hash] .' $_POST[$token_hash]<br>';
問題是$_POST[$token_hash]
回聲空白值(沒有值)....
我也試過$_POST[' .$token_hash .']
但不工作。
其他$_POST
作品,但它們就像$_POST['some_value']
似乎終於得到解決。不明白爲什麼沒有工作之前。如果對別人有用。這是解決方案。
創建隨機值 $ token_hash = sha1(uniqid($ time_when_form_submitted .'token'。$ _ SERVER [「REMOTE_ADDR」]));
然後創建會話 $ _SESSION [ 'token_hash'] = $ token_hash;
然後通過會話輸入
echo '<input type="hidden" name="' .$_SESSION['token_hash'] .'" id="' .$_SESSION['token_hash'] .'" value="' .$_SESSION['token'] .'">'
然後從輸入獲取會話值。 該代碼必須全部previos以上 $ token_hash_from_input = $ _SESSION [ 'token_hash'];
然後用 $ _ POST [$ token_hash_from_input]) 獲取輸入值
在每次請求$ token_hash將被設置爲一個**不同**隨機值 – hek2mgl 2013-02-28 07:28:24
'var_dump($ token_hash,$ _POST)'並且看看你有什麼......也許'$ token_hash'在你發佈的腳本中被重新生成,並且它們根本不匹配? – Laimoncijus 2013-02-28 07:28:34
可能你不能發送任何可以從'$ _POST ['random']' – Starx 2013-02-28 07:30:04