Programma calendario attività personali - Dati modulo mancanti in un programma PHP
Finora nel programma del calendario delle attività personali abbiamo scritto il codice per la possibilità che il modulo Web di iscrizione alle attività non sia stato ancora inviato ($ _POST ['submit'] è vuoto). In questo caso, il programma inizializza le variabili su null appena prima della chiamata della funzione che visualizzerà il modulo nel browser Web per la prima volta. Ora codificheremo la possibilità che il modulo sia stato inviato ($ _POST ['submit'] non è vuoto). In questo caso, ci sono due opzioni per il passaggio successivo.
  1. Se il modulo è stato inviato e l'utente non ha fornito tutti i dati richiesti, il programma visualizzerà nuovamente il modulo nel browser Web insieme a un messaggio di errore.

  2. Se il modulo è stato inviato e i dati richiesti non mancano, il programma elaborerà i dati e li invierà al database.
Lavoriamo sulla prima opzione. Come verificheremo se ci sono dati mancanti? Innanzitutto, dobbiamo decidere quali dati sono richiesti e quali facoltativi. Per questo semplice programma di calendario, gli unici dati richiesti sono il titolo dell'attività e l'ora / la data di inizio. Gli altri campi di input nel modulo Web sono facoltativi. Questi sono i cinque campi di input dati richiesti nel modulo Web e i sei facoltativi.
necessario

act_title
act_month_1
act_day_1
act_year_1
act_hour_1
Opzionale

act_desc
act_month_2
act_day_2
act_year_2
act_hour_2
act_status

Il nostro primo passo è utilizzare l'istruzione if di PHP per verificare la presenza di dati mancanti per ciascuno dei campi di input obbligatori e facoltativi. Creeremo anche una variabile chiamata $ error_message e inizialmente imposteremo il valore su no. Se mancano dei dati, la variabile verrà impostata su . Ecco la prima sezione del codice.

$ error_message = "no";

if (empty ($ _ POST [ 'act_title']))
{
$ error_message = "yes";
$ pass_act_title = "";
}
else {$ pass_act_title = $ _POST ['act_title']; }


if (vuoto ($ _ POST ['act_desc'])) {$ pass_act_desc = ""; }
else {$ pass_act_desc = $ _POST ['act_desc']; }
. . .
. . .

Cosa fa questo codice? Il programma imposterà innanzitutto la variabile $ error_message su no. Successivamente testerà ciascuno degli undici campi di input dei dati passati dal modulo. Nel codice sopra, stiamo testando le prime due variabili act_title e act_desc. Tuttavia, l'intero codice testerà anche le altre 9 variabili. Ci sono tre possibili risultati.

  1. Se il programma rileva dati mancanti da a necessario campo di input (act_title), imposterà la variabile del parametro corrispondente su null e la variabile $ error_message su .

  2. Se il programma rileva dati mancanti da un opzionale campo dati (act_desc), imposterà la variabile del parametro su null ma non imposta $ error_message su .

  3. Se i dati per un campo di input non mancano, eseguirà l'istruzione else. Imposta la variabile del parametro sul valore della variabile $ _POST [''] corrispondente e la variabile $ error_message non essere colpiti.
Se il programma supera il test per tutte le undici variabili $ _POST e la variabile $ error_message è ancora impostata su no, questo dice al programma che non mancano dati richiesti. In questo caso, i dati verranno ulteriormente elaborati e passati al database. Tuttavia, se la variabile $ error_message è stata impostata su , ciò significa che almeno un campo obbligatorio contiene dati mancanti. Il programma chiamerà di nuovo la funzione Activity_Entry_Form. Poiché abbiamo già impostato il valore delle variabili dei parametri su null (per i dati mancanti) o sul valore della variabile $ _POST corrispondente, siamo pronti a passarle con la chiamata di funzione.

if ($ error_message == "yes")
{
Activity_Entry_Form ($ pass_act_title, $ pass_act_desc,
$ pass_act_month_1, $ pass_act_day_1, $ pass_act_year_1,
$ pass_act_hour_1, $ pass_act_month_2, $ pass_act_day_2,
$ pass_act_year_2, $ pass_act_hour_2, $ pass_act_status);
}
else {elabora ulteriormente i dati}
Nota--La freccia indica che il codice è racchiuso in una seconda riga e dovrebbe essere davvero tutto su una riga.

Il prossimo passo sarà apportare modifiche alla funzione Activity_Entry_Form per gestire il nuovo messaggio di errore.

Nota: lo scopo di questa esercitazione è creare un programma di calendario delle attività personali per uso personale e insegnare le basi dei database PHP e MySQL. Non ho incluso alcuna funzionalità di sicurezza come la prevenzione di dati di input dannosi. Ciò renderebbe questo tutorial troppo complicato per il principiante. Se stavi creando un programma per il Web, vorresti includere tale sicurezza nel codice del programma.