LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vuoi leggere The Bell
Niente spam

Quello 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. Si noti che il protocollo HTTP è indirettamente correlato a PHP perché è stato creato per scambiare pagine html e PHP semplicemente estende le capacità di entrambi.

La richiesta GET viene utilizzata per ricevere i dati e il POST per l'invio. (Ricorda che tecnicamente funzionano allo stesso modo).

Pertanto, nel contesto di PHP, basato su questa ideologia, hanno fatto quanto segue:
1. Gli array superglobali ($ _GET, $ _POST) vengono creati di default ogni volta che si avvia PHP.
2. Se è presente un punto interrogativo (?) Nella stringa della query. Poi tutto ciò che conta dopo di lui parametri Richiesta GET, sono presentati nel formato "chiave" \u003d "valore" e il carattere e commerciale (&) viene utilizzato come separatore
Esempio:
OTTIENI /index.php?name\u003dAndrey&surname\u003dGalkin
questa è una stringa di query, ci sono 2 parametri. questi parametri finiranno nell'array $ _GET.
3. $ _POST è compilato in un altro modo. il contenuto di questo array viene popolato dalle "intestazioni della richiesta". Cioè da un luogo nascosto alla vista in una forma esplicita. Tutta la routine di creazione di tali intestazioni viene eseguita dal browser. Anche se a volte qualcosa viene modificato manualmente nelle intestazioni.

Molto spesso, la richiesta di post viene utilizzata nei moduli (per l'invio di dati).

Ad esempio abbiamo un modulo di login 2 campi login e password.

Immaginiamo di utilizzare il metodo GET. Quindi, quando invieremo il modulo, andremo al seguente indirizzo /login.php?login\u003dAndrey&password\u003d123 d'accordo sul fatto che non è affatto sicuro trasferire tali informazioni in questo modo. Chiunque può aprire il browser e iniziando a inserire l'indirizzo del sito, può vedere le tue password e gli accessi dalla cronologia.

Ma se specifichiamo con il metodo POST, riceveremo la seguente richiesta:
POST /login.php (login \u003d Andrew & password \u003d 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 sul risultato dell'esecuzione dello script (login, password, numeri di carte di credito, messaggi, ecc.).

E un'altra buona notizia, possono essere combinate, per esempio
POST /index.php?page\u003dlogin (login \u003d Andrey & password \u003d 123) Penso di aver già spiegato abbastanza cosa ne verrà fuori e quali parametri entreranno in quale array.

L'uso dei metodi GET e POST in PHP è difficile da sopravvalutare, poiché questi metodi si trovano su quasi tutti i siti. Prima di studiare il materiale descritto di seguito, ti consiglio di familiarizzare con il tag html

... Diamo un'occhiata a ciascuno di questi metodi in dettaglio.

Metodo GET

Il metodo GET utilizza una stringa URL per passare i dati. Potresti aver notato URL lunghi e oscuri. Per esempio: function.php? login \u003d Alex & email \u003d dezyakin... In questo caso, i dati vengono elaborati in function.php. Dopo il punto interrogativo "?" C'è un'enumerazione dei parametri trasmessi (il parametro è separato dal segno "&") con i valori: al parametro di login viene assegnato il valore Alex e la variabile email è dezyakin. I dati verranno archiviati nell'array superglobale $ _GET. Di seguito viene presentato un esempio di utilizzo del metodo GET:

Accesso: E-mail: Utilizzando l'array superglobale $ _GET, mostriamo i valori accettati:* / eco "
login \u003d ". $ _GET [" login "]; echo"
email \u003d ". $ _GET [" email "];?\u003e

Nota come leggiamo i valori dall'array superglobale $ _GET: $ _GET ["nome_variabile"]... Nel nostro esempio, i nomi delle variabili sono stati dichiarati nel modulo (nome \u003d login e nome \u003d email).

Consigli:
Prima di elaborare i valori ricevuti, ti consiglio di verificare la loro esistenza tramite funzioni isset (nome_variabile) o vuoto (nome_variabile) - queste funzioni sono state trattate nella precedente lezione 2: variabili in PHP. Per esempio:

verifica dell'esistenza con isset: if isset ($ _GET ["login"]) ( operatori per gestire il login ... } //o controlla l'esistenza usando vuoto: se vuoto ($ _GET ["email"]) ( operatori per l'elaborazione della posta elettronica ... } ?>

Nel modulo è possibile specificare il nome del file che elaborerà i valori passati. Questo viene fatto utilizzando l'attributo di azione del modulo, a cui può essere assegnato l'indirizzo di questo file. Per impostazione predefinita, questo file viene assegnato al file corrente (ovvero elaborato nel file in cui si trova il modulo). Ecco un esempio in cui i dati di un modulo vengono inviati per l'elaborazione al file srcipt.php:

Accesso: E-mail:

Il file script.php deve contenere un qualche tipo di gestore di informazioni, altrimenti le informazioni verranno passate a vuoto.

Il metodo GET ha molti svantaggi:

  • L'utente vede i valori dei parametri passati;
  • L'utente può facilmente falsificare i parametri passati;
  • Trasmissione scomoda di informazioni binarie (è necessario codificare in formato testo);
  • La quantità di dati trasferiti è limitata - 8 Kbyte;

A causa degli svantaggi di cui sopra, il metodo GET viene utilizzato solo nei casi in cui è necessario trasferire una piccola quantità di dati e questi dati non sono in alcun modo classificati.

Metodo POST

Il metodo POST differisce da GET in quanto i dati vengono trasmessi in forma chiusa. C'è un array superglobale $ _POST da cui puoi leggere dati come questo: $ _POST ["nome_variabile"]... Per esempio:

Accesso: "\u003e E-mail: ">
Utilizzando l'array superglobale $ _POST, stampa i valori accettati:* / eco "
login \u003d ". $ _POST [" login "]; echo"
email \u003d ". $ _POST [" email "];?\u003e

Il risultato dell'esecuzione del codice sopra descritto è mostrato nella figura seguente:

Come puoi vedere, l'URL non ha poscritto, ma comunque i dati sono stati ricevuti e visualizzati.

Nota:
1) Il volume dei valori trasferiti dal metodo POST è limitato per impostazione predefinita ed è pari a 8 MB. Per aumentare questo valore, è necessario modificare la direttiva post_max_size in php.ini.

2) Nelle versioni precedenti di PHP, invece dei nomi brevi degli array superglobali $ _GET e $ _POST, venivano usati nomi più lunghi: $ HTTP_GET_VARS e $ HTTP_POST_VARS. Sono disabilitati di default in php 5, ma puoi abilitarli nel file di configurazione php.ini usando il parametro register_long_arrays. In php 6, questi nomi lunghi non saranno disponibili.

3) Prima di elaborare le variabili da $ _POST, ti consiglio di controllare le variabili per la loro presenza, proprio come è stato fatto con il metodo GET.

Etichetta

- uno dei componenti più importanti di qualsiasi sito. Contiene tutti gli elementi: campi, pulsanti, caselle di controllo, pulsanti di opzione e altri.

Azione e metodo

La forma ha molti attributi, ma quelli principali e obbligatori lo sono e ... Se questi attributi sono assenti, il modulo non accetterà i valori immessi.

Attributo di azione

- un attributo che specifica il collegamento del gestore del valore. Ovvero l'elemento specificato in , elaborerà i valori del modulo. Se non lo specifichi, tutti i valori torneranno al valore originale, aggiornando la pagina.

È possibile specificare il percorso "form.html", ma più spesso vengono utilizzati gestori scritti nel linguaggio "php (form.php)". Potrebbe esserci un'opzione tale che la pagina in cui si trova il modulo elabori essa stessa i valori ed è scritta in php. In questo caso, puoi omettere l'attributo .

Inoltre, un indirizzo e-mail può fungere da gestore. Per scriverlo nell'attributo action, viene utilizzata la parola chiave mailto:, che specifica il nome dell'indirizzo di posta elettronica.

Se si utilizza la posta elettronica per l'invio, all'attivazione si aprirà un programma Windows standard.

Attributo del metodo

- è responsabile del modo in cui i valori vengono elaborati. Quando il modulo viene attivato, il metodo specificato verrà comunicato al server e quindi elaborato in base ad esso.

Metodi di lavorazione totali 2 - e Sono i valori dell'attributo.

Ciascun valore può essere inserito sia con lettere maiuscole che minuscole. Non importa davvero.

Metodo GET

È il metodo del protocollo HTTP più comunemente utilizzato. Prende tutti i dati del modulo, li elabora e quindi li visualizza nella barra degli indirizzi.

Questo metodo è molto comodo, in quanto consente di modificare i valori ricevuti nella stringa del browser. Può anche essere referenziato più volte.


Il lato negativo dell'utilizzo è la sicurezza ridotta e la quantità limitata di dati elaborati. Ha un effetto negativo sulla sicurezza perché tutti i valori immessi vengono visualizzati nella barra degli indirizzi.

Non usare per creare moduli con informazioni riservate. Tali forme hanno una maggiore probabilità di essere violate.

Metodo POST

Usato meno spesso di ... Passa anche i valori del modulo, ma non li visualizza nella barra degli indirizzi, il che migliora la sicurezza generale del sito. Per questo motivo, è più adatto per l'uso nelle applicazioni web.

Metodo Ti permette di trasferire più informazioni di ... È possibile trasferire piccoli file di testo fino a 4KB.

Maggiori informazioni lo rendono più adatto a forum e servizi postali più grandi. È più adatto per lavorare con i database.

I valori elaborati vengono memorizzati una volta e poi rimangono invariati. Cioè, non puoi fare riferimento allo stesso indirizzo un numero illimitato di volte, come quando usi il metodo .

Conclusione

In questo articolo, hai appreso di più sugli attributi del tag form e sui valori e Naturalmente, queste non sono tutte le informazioni sulle loro funzioni. Puoi saperne di più sul loro lavoro imparando PHP.

Puoi comprendere questi metodi in dettaglio studiando informazioni aggiuntive. Buona fortuna per l'apprendimento!

Oggi ho voluto toccare un po 'le cose primitive e descrivere ciò che si può trovare sul World Wide Web in grandi quantità e senza troppe difficoltà. Si tratterà praticamente del sancta sanctorum del protocollo HTTP: richieste POST e GET.

Molti chiederanno perché? Rispondo brevemente e in modo chiaro: non tutti sanno cos'è e perché è necessario, e chi lo vuole sapere (pur capendone poco) spesso non riesce a capire cosa scrive in tanti, tanti articoli dedicati a questo argomento. Cercherò di spiegare con le dita cosa sono le richieste POST e GET e con cosa vengono mangiate.
Quindi, iniziamo il nostro viaggio in una fiaba ...
Se stai leggendo questo messaggio, almeno sai che aspetto ha Internet e che cos'è un sito Internet. Omettendo tutte le sottigliezze del World Wide Web, opereremo con concetti come utente e sito. Qualunque cosa si possa dire, questi due soggetti devono in qualche modo interagire tra loro. Le persone, ad esempio, comunicano tra loro attraverso gesti, emozioni e parole, gli animali emettono dei suoni, ma cosa succede quando una persona e una risorsa Internet “comunicano”? Qui abbiamo un caso di scambio di informazioni, che può essere trasferito a una conversazione umana del piano "Domanda-Risposta". Inoltre, sia l'utente che il sito possono porre domande e risposte. Quando parliamo di un sito, le sue domande e risposte, di regola, sono sempre espresse sotto forma di una pagina Internet con uno o un altro testo. Quando si tratta dell'utente, tutto avviene qui grazie alle richieste GET e POST (ovviamente, non solo, ma stiamo parlando di loro).

Così, abbiamo scoperto che gli oggetti del nostro tema sono necessari per la "comunicazione" con i siti. Inoltre, sia le richieste GET che quelle POST possono essere utilizzate per "porre domande" al sito e per "risposte". Come sono differenti? È piuttosto semplice. Tuttavia, per spiegare le differenze, dovrai considerare un esempio, per il quale prendiamo il sito del piano del negozio Internet.
Probabilmente hai prestato spesso attenzione quando cercavi qualcosa nei negozi online, che cercando attraverso i filtri, l'indirizzo del sito si trasformava dal bellissimo “http://magaazin.ru” nel terribile “http://magaazin.ru/?category\u003d scarpe e taglia \u003d 38 ". Quindi, tutto ciò che viene dopo il carattere "?" È la tua richiesta GET al sito, e per essere più precisi, in questo caso, stai chiedendo al sito cosa ha nella categoria "Scarpe" con taglie "38" (questo esempio è preso dalla testa, infatti, potrebbe non sembrare tutto così ovvio). Di conseguenza, possiamo porre domande noi stessi, specificandole nella barra degli indirizzi del sito. Ovviamente, questo metodo presenta diversi svantaggi. In primo luogo, chiunque si trovi accanto all'utente al computer può facilmente spiare tutti i dati, quindi è altamente indesiderabile utilizzare questo tipo di richiesta per trasferire le password. In secondo luogo, c'è una limitazione sulla lunghezza della stringa che può essere trasferita dal campo dell'indirizzo del sito, il che significa che non funzionerà per trasferire molti dati. Tuttavia, l'indubbio vantaggio di utilizzare le richieste GET è la sua facilità d'uso e la possibilità di chiedere rapidamente al sito, che è particolarmente utile durante lo sviluppo, ma questa è un'altra storia ...
Ora parliamo delle richieste POST. I lettori più attenti potrebbero aver capito che la principale differenza tra questa richiesta e la sua controparte è la segretezza dei dati trasmessi. Se consideriamo un negozio online, un vivido esempio di dove viene utilizzata una richiesta POST è la registrazione sul sito. Il sito richiede i tuoi dati, tu inserisci questi dati e quando fai clic sul pulsante "Registrati", invia la tua risposta. Inoltre, questi dati non verranno visualizzati esternamente. Vale anche la pena notare che è possibile richiedere una quantità abbastanza grande di informazioni e la richiesta POST non ha restrizioni significative. Bene, se tocchi il meno, una tale richiesta non può essere generata rapidamente. Non puoi fare a meno di abilità speciali. Anche se in realtà tutto non è così difficile, ma ancora una volta, questa è un'altra storia.
Riassumiamo. Le richieste POST e GET sono necessarie per "comunicare" tra l'utente e il sito. Sono essenzialmente l'opposto l'uno dell'altro. L'utilizzo di determinati tipi di query dipende dalla situazione specifica ed è estremamente scomodo utilizzare un solo tipo di query.

Descrizione

L'attributo del metodo indica al server il metodo della richiesta.

Sintassi

...

I valori

Il valore dell'attributo del metodo non fa distinzione tra maiuscole e minuscole. Esistono due metodi: ottenere e pubblicare.

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 \u003d valore" vengono aggiunte in questo caso all'indirizzo dopo il punto interrogativo e separate da una e commerciale (il simbolo &). La comodità di utilizzare il metodo get sta nel fatto che l'indirizzo con tutti i parametri può essere utilizzato più volte, salvandolo, ad esempio, nei segnalibri del browser e anche modificando 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, poiché ha un limite di 4K. Grandi quantità di dati vengono utilizzate in forum, servizi postali, popolazioni di database, trasferimenti di file, ecc.

Attributo richiesto

Valore predefinito

HTML5 IE Cr Op Sa Fx

Tag FORM, attributo del metodo

LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vuoi leggere The Bell
Niente spam