Visibilità dell'array POST

Salve a tutti,

so bene che l'array post è una variabile superglobale quindi visibile all'interno del file a cui vengono mandate le info di un eventuale form o l'invio asincrono tramite i metodi dell'oggetto xmlhttprequest.Il dubbio che ho è se lo stesso array è visibile attraveso pagine diverse dell'applicazione.Mi spiego meglio.Supposto di inviare delle informazioni di un form tramite il method=POST,ad una pagina che effettua la validazione dei dati,e supposto la non validità e il rinvio dell'utente nella pagina del form,l'array è ancora visibile?O viene distrutto?Potreste chiarirmi questo dubbio?In caso in cui l'array POST non sia visibile posso risalire alle info sbagliate del form attraverso l'array SESSION?Saluti.

inviato 4 anni fa
and77
modificato 4 anni fa
Gianni Tomasicchio
X 0 X

Form ---invio al server---> pagina Php ($_POST visibile a tutti i livelli)

pagina Php (form non valido) ---invio al browser ---> Avviso form non valido

browser richiede qualcosa al server ----> $_POST (della riga uno) non esiste più.

L'arry POST è riempito in base ai dati inoltrati da un form html con metodo POST di volta in volta.

risposto 4 anni fa
Mario Santagiuliana
X 0 X

Supposto di inviare delle informazioni di un form tramite il method=POST,ad una pagina che effettua la validazione dei dati,e supposto la non validità e il rinvio dell'utente nella pagina del form,l'array è ancora visibile?O viene distrutto?

Dipende da cosa intendi per "rinvio". Se si tratta di un redirect effettuato tramite la funzione header('location ...') allora perdi tutto poiché la seconda visualizzazione del form in realtà avviene a fronte di una nuova richiesta di quella pagina da parte del browser.

Se invece la nuova visualizzazione del form è a carico dello stesso script che ha effettuato la validazione (o di uno script incluso) allora l'array $_POST è ancora disponibile.

In caso in cui l'array POST non sia visibile posso risalire alle info sbagliate del form attraverso l'array SESSION?

Se ti trovi nel primo caso puoi usare la sessione per memorizzare inviati dall'utente in prima battuta.

risposto 4 anni fa
Gianni Tomasicchio
X 0 X

OK,grazie per il chiarimento.Saluti.

risposto 4 anni fa
and77
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda