I valori di un modulo non possono essere passati al file di azione oppure il file di azione non può ottenere i valori dei campi nel modulo

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

  •  22-07-2019
  •  | 
  •  

Domanda

Questo è il codice 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;

Di seguito sono riportate le prime due righe in digitalchange.php:

$addbalance=$_POST['addbalance'];
echo "What is wrong".$addblance;

Uscite:

  

Cosa c'è che non va

digitalchange.php semplicemente non riesce a ottenere il valore di addbalance, ho provato $ _REQUEST, ma ancora fallito. La casella di input di addbalance non è vuota. Ma sembra che i valori della forma di digitalchange non possano essere passati a digitalchange.php. Cosa c'è che non va?

È stato utile?

Soluzione

Vedo due cose sbagliate nel codice che hai pubblicato:

<form id="digitalchange" action="digitalchange.php?" action="post">
                                                     ^

Questo dovrebbe essere method="post". Prova a validare il tuo HTML per trovare problemi come questo.

$addbalance=$_POST['addbalance'];
echo "What is wrong".$addblance;
                          ^

Un semplice errore di battitura qui. Dovresti sempre controllare il tuo registro degli errori, ti avrebbe dato un avviso sull'uso di una variabile non dichiarata $addblance.

Altri suggerimenti

prova print_r($_POST) e print_r($_GET) dato che probabilmente hai un refuso nel nome di un campo da qualche parte.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top