Avere PHP ricevere i giorni in cui sei disponibile senza tonnellate di variabili
Domanda
Ecco la mia situazione: sto creando un piccolo sito Web in cui, al momento della registrazione, puoi selezionare in quali giorni sei disponibile per qualcosa.
Mondaymorning Lunedì pomeriggio Martedì mattina Martedì pomeriggio ecc ...
Fino a domenica pomeriggio.
Sto verificando questo offcourse, in PHP, e devo dichiarare 14 variabili e andare su ognuna per determinare se la casella di controllo è stata selezionata o meno.
Ora mi chiedo, non c'è un modo più semplice? Ora, queste sono caselle di spunta, non è come quando si caricano file si aggiunge semplicemente [] al nome attributo in HTML e vengono caricati come un array.
Ma sarebbe utile. Qualcuno sa come posso ottenere qualcosa del genere?
Soluzione
In realtà, puoi semplicemente aggiungere []
alla fine dei nomi, assicurati solo di aver impostato tutti i loro valori in modo diverso.
<input type="checkbox" name="available[]" value="Mon AM" />
<input type="checkbox" name="available[]" value="Mon PM" />
Quindi passa in rassegna l'array $ _POST ['available']
nel tuo codice di elaborazione del modulo.
Altri suggerimenti
Basandoci sulla risposta del Ciad, ecco il codice che useresti per passare attraverso le variabili:
foreach( Basandoci sulla risposta del Ciad, ecco il codice che useresti per passare attraverso le variabili:
<*>POST['available'] as $a)
{
//Do stuff with $a
}
Se sei preoccupato per la sicurezza o le prestazioni e dovresti esserlo, forse dovresti farlo anche tu.
If (count( Se sei preoccupato per la sicurezza o le prestazioni e dovresti esserlo, forse dovresti farlo anche tu.
<*>POST['available']) > 14) {
softErrorToClient('The data you entered could not be analysed. Please try again.');
// log this error... someone's being naughty
}