Mi chiedo se c'è qualche tipo di garanzia sull'ordine delle variabili POST che vedrò dal lato server.Qual è l'ordine previsto di un array inviato in un modulo HTML?
Il mio caso d'uso è che ho un modulo che un utente compilerà per inserire un elenco di nomi ed e-mail. Sto utilizzando una tabella file, ognuno dei quali ha due ingressi:
<table>
<tr>
<td><input type='text' name='name[]' /></td>
<td><input type='text' name='email[]' /></td>
</tr>
<tr>
<td><input type='text' name='name[]' /></td>
<td><input type='text' name='email[]' /></td>
</tr>
</table>
La riga potrebbe essere clonato tramite JavaScript per consentire all'utente di digitare più nomi ed e-mail in modo da non voglio sapere in anticipo come molti saranno presentati.
Sul lato server, vedo $ _POST ['email'] e $ _POST ['nome'] impostato, ma mi chiedo se posso tranquillamente supporre $ _POST ['email'] [0] corrisponderà a $ _POST ['nome'] [0], $ _POST ['email'] [1] corrisponderà a $ _POST ['nome'] [1], e così via. Alcuni test di base sembrano indicare sì, ma mi chiedo se c'è una garanzia o se sto solo diventando fortunato.
Dice chi? Devo essere assolutamente sicuro, se lo userò in produzione. –
perché non testare solo il formato semplice e il risultato var_dump. Vedrai il risultato. il risultato sarà sempre lo stesso di in form html (ovviamente è possibile modificare la posizione di visibilità degli elementi che non hanno effetto) –
Specifica la specifica HTML: "I nomi/i valori di controllo sono elencati nell'ordine in cui appaiono nel documento ". http://www.w3.org/TR/html401/interact/forms.html#form-content-type – webbiedave