フォームの値をアクションファイルに渡すことができない、またはアクションファイルがフォームのフィールドの値を取得できない

StackOverflow https://stackoverflow.com/questions/1825110

  •  22-07-2019
  •  | 
  •  

質問

これは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)を試してください。フィールド名にタイプミスがある可能性があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top