Differenza tra get e post. Utilizzo dei metodi GET e POST. Maggiori informazioni su HTTP
Ciò che hanno in comune è che funzionano allo stesso modo. Non c'è tecnicamente alcuna differenza tra loro. Ma ci sono differenze ideologiche.
Li tratterò nel contesto di PHP. Nota che il protocollo HTTP è indirettamente correlato a PHP perché è stato creato per lo scambio pagine html PHP estende semplicemente le capacità di entrambi.
La richiesta GET viene utilizzata per ricevere dati e POST per inviarli. (Come promemoria, tecnicamente funzionano allo stesso modo).
Pertanto, nel contesto di PHP, sulla base di questa ideologia, hanno fatto quanto segue: 1. Gli array superglobali ($ _GET, $ _POST) vengono creati per impostazione predefinita ogni volta che avvii PHP. 2. Se è presente un punto interrogativo (?) nella stringa di query. Poi tutto quello che conta dopo di lui parametri richiesta GET, vengono presentati nel formato "chiave" = "valore" e il carattere e commerciale (&) viene utilizzato come separatore Esempio: GET /index.php?name=Andrey&surname=Galkin questa è una stringa di query, ci sono 2 parametri. questi parametri finiranno nell'array $ _GET. 3. $ _POST viene compilato in un altro modo. i contenuti di questo array sono popolati dalle "intestazioni di richiesta". Cioè, da un luogo nascosto alla vista in una forma esplicita. Tutta la routine di creazione di tali intestazioni viene rilevata dal browser. Anche se a volte qualcosa viene modificato manualmente nelle intestazioni.
Molto spesso, la richiesta di posta viene utilizzata nei moduli (per l'invio dei dati).
Ad esempio abbiamo un form di login a 2 campi login e password.
Immaginiamo di utilizzare il metodo GET. Quindi, quando invieremo il modulo, andremo al seguente indirizzo /login.php?login=Andrey&password=123, concordiamo che non è affatto sicuro trasferire tali informazioni in questo modo. Chiunque può aprire il tuo browser e iniziando a inserire l'indirizzo del sito, può vedere le tue password e i tuoi accessi dalla cronologia.
Ma se specificassimo utilizzando il metodo POST, riceveremmo la seguente richiesta: POST /login.php (login = Andrey & password = 123) cosa sarebbe nascosto tra parentesi e non salvato nel browser.
In generale, per riassumere: GET è ottenere una pagina specifica in un modo specifico (ordinamento, pagina del blog corrente, stringa di ricerca, ecc.). POST - per l'invio di dati che non influiscono sulla visualizzazione della pagina, nel senso che questi dati influiscono solo sull'esito dell'esecuzione dello script (login, password, numeri di carta di credito, messaggi, ecc.).
E un'altra buona notizia, possono essere combinati, ad esempio POST /index.php?page=login (login = Andrey & password = 123) Penso di aver già spiegato abbastanza cosa ne verrà fuori e quali parametri verranno inseriti in quale array.
Questo post ha lo scopo di spiegare i principi del trasferimento di dati su Internet utilizzando due metodi principali: GET e POST. L'ho scritto come supplemento alle istruzioni per il generatore di turni per chi è poco interessato ai dettagli ☺.
Vai al seguente indirizzo (questo è per una spiegazione visiva): http://calendarin.net/calendar.php?year=2016 Fai attenzione alla barra degli indirizzi del browser: calendarin.net/calendar.php ? anno = 2016 Viene nominato il file principale, seguito da un punto interrogativo (?) e da un parametro "anno" con un valore di "2016". Quindi, tutto ciò che segue il punto interrogativo è una richiesta GET. È semplice. Per passare più di un parametro, ma diversi, devono essere separati da una e commerciale (&). Esempio: calendarin.net/calendar.php ? anno = 2016 & display = giorni-lavorativi-e-giorni-non-lavorativi
Il file principale è ancora denominato, seguito da un punto interrogativo (?), Quindi - il parametro "year" con il valore "2016", quindi - la e commerciale (&), quindi - il parametro "display" con il valore "work -giorni-e-giorni -off ".
I parametri GET possono essere modificati direttamente in barra degli indirizzi browser. Ad esempio, modificando il valore "2016" in "2017" e premendo il tasto , si passerà al calendario per il 2017.
Si tratta della trasmissione dei dati in modo nascosto (l'indirizzo della pagina non cambia); cioè puoi vedere cosa è stato trasmesso solo con l'aiuto di un programma (script). Ad esempio, nel seguente strumento per il conteggio dei caratteri in un testo, i dati di origine vengono trasmessi utilizzando il metodo POST: http://usefulonlinetools.com/free/character-counter.php
Se avete domande, commenti e la mia e-mail al vostro servizio.
Oltre al metodo GET, di cui abbiamo discusso nel post precedente, esiste un altro metodo per inviare una richiesta tramite il protocollo HTTP: il metodo POST. Anche il metodo POST è molto utilizzato nella pratica.
Se per accedere al server con il metodo GET ci è bastato digitare la richiesta nell'URL, allora nel metodo POST tutto funziona secondo un principio diverso.
Per soddisfare questo tipo di richiesta, dobbiamo fare clic sul pulsante con l'attributo type = "submit", che si trova nella pagina web. Nota che questo pulsante si trova nell'elemento
Se l'utente inserisce del testo nel campo di testo e fa clic sul pulsante "Invia", la variabile di testo con il valore del contenuto inserito dall'utente verrà inviata al server.
Richieste POST e GET in termini semplici
Questa variabile verrà inviata dal metodo POST.
Se scrivi nel modulo in questo modo:
Il modulo ha attributi, elencherò i più comuni:
Creiamo un modulo:
Come file gestore, ho messo il file test.php poiché è in esso che scrivo esempi per te. Ho impostato il metodo di invio della posta in quanto questi metodi vengono utilizzati nel 99,9% dei casi. Ho anche dato un nome al nostro modulo - modulo
Ora tuffiamoci nel mondo degli elementi del modulo. La prima cosa che devi capire è che quasi tutti gli elementi sono tag. l'unica differenza è nell'attributo genere a questi tag. Permettetemi di elencare gli elementi del modulo utilizzati:
Sono sicuro che hai visto questi campi più di una volta, quindi qui, come si suol dire: "nessun commento"
Ora mettiamo insieme un breve questionario di formazione con cui lavoreremo in seguito. Il nostro compito è comporre un piccolo questionario che ci dirà il nome della persona che ha compilato, il sesso, il paese di provenienza, il suo colore preferito e un campo di testo dove l'utente può aggiungere qualcosa su di sé. Questo è quello che ho fatto:
I valori
Il valore dell'attributo del metodo non distingue tra maiuscole e minuscole. Ci sono due metodi: ottieni e pubblica.
Ottieni Questo metodo è uno dei più comuni ed è progettato per ottenere le informazioni richieste e trasferire i dati nella barra degli indirizzi. Le coppie "nome = valore" in questo caso vengono aggiunte all'indirizzo dopo il punto interrogativo e separate da una e commerciale (il simbolo &). La comodità dell'utilizzo del metodo get risiede nel fatto che l'indirizzo con tutti i parametri può essere utilizzato ripetutamente, salvandolo, ad esempio, nei segnalibri del browser e modificando anche i valori dei parametri direttamente nella barra degli indirizzi. post Il metodo post invia i dati al server in una richiesta del browser. Ciò consente di inviare più dati di quelli disponibili per il metodo get perché ha un limite di 4K. Grandi quantità di dati vengono utilizzate in forum, servizi postali, popolamenti di database, trasferimenti di file, ecc.
Attributo richiesto
Valore predefinito
HTML5 IE Cr Op Sa Fx
Tag FORM, attributo del metodo
Non hai trovato risposta alla tua domanda? Guarda qui