2017-02-16 13 views
3

私のウェブサイトのページから別のページにデータを送る必要があります。 私はhtmlフォームを使用し、action属性をdestinationに設定する必要があります。フォームで固定データを送信

<form method="POST" action="/destination"> 
    <input type="text" name="item-wear">FACTORY-NEW</input> 
    <button type="submit">Sell</button> 
</form> 

私は入力タグをdivに入れ替えようとしましたが、思った通りに動作しません。 また、私はStackoverflowで答えた他の質問として隠された入力を使用したくありません。私はユーザーがブラウザからデータを変更できると思うので、私はそれを望んでいない。

ps。悪い英語のために申し訳ありませんが、編集は感謝しています。

+1

隠された入力などを使用しても、人々はデータを変更できます。データを改ざんしていないユーザーには頼らないでください。 – doorstuck

+0

@doorstuckええ、私は知っています。それを防ぐ最善の方法は何ですか? –

+0

ユーザーからの何かを信用しないでください。私はあなたが解決しようとしていることを知らない。しかし、彼が悪いことがあるので、ユーザーからの入力を盲目的に使用しないでください。私はあなたが解決しようとしていることが分からないので、私は答えることができません。 – doorstuck

答えて

2

あなたが「トークン」を使用して、フォームを確保し、フォームの外にデータを渡すために$_SESSIONを使用することができます。

<?php 

session_start(); 
$token = md5(uniqid(rand(), TRUE)); 
$_SESSION['token'] = $token; 
$_SESSION['secret_data'] = "Top secret data"; 

?> 

<form method="POST" action="/destination"> 
    <input type="hidden" name="token" value="<?php echo $token; ?>" /> 
    <input type="text" name="item-wear">FACTORY-NEW</input> 
    <button> type="submit">فروش</button> 
</form> 

そして、トークンはセッション1と一致した場合だけを確認してください。はいの場合は、$_SESSION配列から保存したデータを取得します。

希望します。

1

あなたはこのように固定値を与えることができます。..

<form method="POST" action="/destination"> 
    <input type="text" name="item-wear" value="Enter your fixed value here"> 
    <input type="submit" value="فروش"> 
</form> 

を、これはあなたを助けることを願っています! attibuteを「読み取り専用」の追加

1

<input type="text" name="item-wear" readonly>FACTORY-NEW</input> 

または選択

<select> 
<option value="1">1</option> 
<option value="2">2</option> 
</select> 

しかし、あなたはまだ後ろでこのデータを確認する必要があります、doorstuckが言うように使用することができ、あなたの入力を変更できません-終わり。

関連する問題