フォームの値をアクションファイルに渡すことができない、またはアクションファイルがフォームのフィールドの値を取得できない
質問
これはPHPコードです:
$html=<<<eod
<div>Your current account balance is <span style="color:red">$$balance</span></div><br/>
<form id="digitalchange" action="digitalchange.php?" action="post">
<input type="hidden" name="tid" value=$announcementid />
<table rules=all FRAME=BOX><tr><td>Balance:<span class="price">$balance</span></td><td>Current Shortfall:$shortfall</td>
<td>Unit Price:<span class="price">$$unitprice</span></td></tr>
<tr><td>Add Balance:$<input type="text" id="addbalance" name="addbalance" size="5" /></td>
<td>Add Shortall:<input type="text" id="addquota" name="addquota" size="4" /></td><td></td></tr>
<tr><td></td><td>Reduce Shortfall:<input type="text" id="reducequota" name="reducequota" size="4" /></td><td></td></tr></table>
Please click Confirm only once.
<input type="submit" value="Confirm" /></form>
<hr>
eod;
echo $html;
digitalchange.phpの最初の2行は次のとおりです。
$addbalance=$_POST['addbalance'];
echo "What is wrong".$addblance;
出力:
問題点
digitalchange.phpは単にaddbalanceの値を取得できません。$ _ REQUESTを試しましたが、それでも失敗しました。 addbalanceの入力ボックスは空ではありません。しかし、digitalchangeの形式の値をdigitalchange.phpに渡すことはできないようです。何が問題なのですか?
解決
投稿したコードに2つの問題があります:
<form id="digitalchange" action="digitalchange.php?" action="post">
^
これはmethod="post"
でなければなりません。このような問題を見つけるには、HTMLを検証してみてください。
$addbalance=$_POST['addbalance'];
echo "What is wrong".$addblance;
^
ここに簡単なタイプミスがあります。エラーログを常に確認する必要があります。未宣言の変数$addblance
の使用に関する警告が表示されます。
他のヒント
print_r($_POST)
とprint_r($_GET)
を試してください。フィールド名にタイプミスがある可能性があります。
所属していません StackOverflow