Un modulo di feedback è un attributo obbligatorio di qualsiasi sito creato per risolvere eventuali problemi seri. Uno dei modi più semplici per organizzare un'e-mail da un visitatore del sito al suo proprietario è utilizzare il comando PHP mail. Di seguito è riportata un'istruzione passo passo su come eseguire questa operazione.
È necessario
Conoscenza base dei linguaggi PHP e HTML
Istruzioni
Passo 1
Passaggio 1: crea un nuovo documento php.
In qualsiasi editor di testo (ad esempio, nel Blocco note standard) crea un nuovo documento. Inserisci subito in esso il frame del codice html della pagina, che integrerai durante la creazione del meccanismo per l'invio dei messaggi di posta elettronica:
Invio di un messaggio di posta elettronica
Passo 2
Passaggio 2: aggiungi un modulo html al tuo documento.
Ora è necessario aggiungere tra i tag html e le istruzioni affinché il browser visualizzi un modulo in cui il visitatore inserisca i dati e li invii al server. Innanzitutto, il tag di apertura del modulo:
L'attributo method specifica come il browser deve inviare le informazioni al server.
Qui è necessario inserire un'istruzione in php - visualizzerà un messaggio per il visitatore dopo che avrà inviato i dati al server e saranno elaborati dallo script:
La riga successiva formerà un campo in cui il visitatore dovrà inserire il suo nome:
Il tuo nome:
Qui l'attributo type specifica il tipo di questo elemento del modulo: una semplice casella di testo. E l'attributo del nome è il nome della variabile in cui l'inserito in questo campo verrà trasmesso al server - nome. Etichetta
- "un ritorno a capo".
Successivamente, devi dare al visitatore l'opportunità di specificare il suo indirizzo email per contattarlo:
E-mail:
Tutto qui è simile alla riga precedente. Il nome della variabile in cui l'indirizzo email del visitatore verrà inviato al server è email.
Ora dobbiamo aggiungere un campo di testo multipagina (tag textarea) per inserire il testo del messaggio:
Messaggio:
Gli attributi rows e cols specificano la dimensione di questo campo: rows specifica il numero di righe e cols specifica il numero di caratteri in ogni riga. Il testo inserito verrà inviato in una variabile denominata mess.
Dopo tutti i campi, aggiungi un pulsante per inviare un messaggio:
L'attributo value di questo tag contiene il testo dell'etichetta sul pulsante ("Submit").
Affinché lo script php funzioni, sarà necessaria un'altra variabile, che deve essere inviata insieme ai dati dal modulo. Posizionalo in un elemento del modulo nascosto al visitatore:
Il nome di questa variabile è "act" e il valore passato è "send".
L'unica cosa che resta da fare è aggiungere il tag di chiusura del modulo:
Passaggio 3
Passaggio 3: aggiungi il codice php per elaborare i dati dal modulo.
Premendo il pulsante denominato "Invia", il visitatore invierà le informazioni da lui inserite. Poiché nel tag del modulo non è presente alcun attributo di azione, che deve indicare l'indirizzo Internet dello script per inviare i dati, verranno inviati all'indirizzo della stessa pagina. Pertanto, è necessario aggiungere le istruzioni php al codice html di questa pagina per ricevere, convalidare e inviare i dati dal modulo al tuo indirizzo email.
Dovrebbero iniziare con il tag php di apertura:
<?php
Nella riga successiva, specifica una variabile che conterrà il messaggio per il visitatore. Mentre vuoto:
$ msg = ;
Ora lo script dovrebbe verificare se i dati sono stati inviati dal modulo. Il server, ricevendo i dati inviati dal metodo POST, li inserisce in un array superglobale denominato $ _POST. Quindi lo script deve verificare se ci sono informazioni dal modulo in questo array. Il visitatore potrebbe non aver compilato nessuno dei campi, ma la variabile nascosta deve essere ancora presente - verificheremo la sua presenza:
if ($ _ POST ['act'] == "send") {
Se esiste una tale variabile, verrà eseguito il blocco successivo di istruzioni di script. Per comodità, all'inizio di questo blocco, posiziona delle variabili che puoi modificare in seguito:
$ lunghezza_email = 500;
Questo è il numero massimo di caratteri consentiti nel messaggio di un visitatore.
$ email_html = falso;
Se l'utente inserisce tag html nel messaggio, verranno tagliati dallo script. Se devono essere lasciati, sostituire il valore falso di questa variabile con vero.
$ email_recepient = "[email protected]";
Questo è il tuo indirizzo email a cui lo script dovrebbe inviare i messaggi dei visitatori.
$ email_subject = "Messaggio da un visitatore del sito";
La variabile contiene il testo che verrà indicato nella riga dell'oggetto dell'e-mail che ti è stata inviata.
$ email_regex = "/ ^ (([^ () .,;: / s @ "] + (. [^ () .,;: / s @ "] +) *) | (". + ")) @ (([0-9] {1, 3}. [0-9] {1, 3}. [0-9] {1, 3}. [0-9] {1, 3}]) | (([a-zA-Z / -0-9] + \.) + [A-zA-Z] {2,})) $ / ";
Questa variabile non deve essere modificata: contiene il modello di espressione regolare utilizzato dallo script per convalidare il formato dell'indirizzo email inserito dal visitatore nel campo email. La riga successiva conterrà questo controllo:
if ((! $ _ POST ['email']) || (! preg_match ($ email_regex, $ _POST ['email']))) $ msg. = "È stato specificato un indirizzo email non valido.";
Se il visitatore ha indicato chiaramente l'indirizzo sbagliato per contattarlo, lo script visualizzerà un messaggio a riguardo. Tutti questi messaggi sono riassunti nella variabile $ msg fino alla fine dello script.
Ora controllando la presenza del testo del messaggio stesso:
if (! $ _ POST ['mess']) $ msg. = "Nessun testo del messaggio";
Se il visitatore ha lasciato vuoto il campo di testo, verrà aggiunto un messaggio a riguardo alla variabile $ msg.
Se nella variabile $ email_html hai specificato la rimozione dei tag html dal testo del messaggio, lo script lo farà nelle due righe seguenti:
$ userMess = $ _POST ['mess'];
if (! $ email_html) $ userMess = strip_tags ($ userMess);
E alla fine di tutti i controlli, controllando la lunghezza del messaggio:
if (strlen ($ userMess)> $ email_length) $ msg. = "Il testo del messaggio è più lungo della lunghezza consentita ($ email_length caratteri).
;
Se almeno uno dei controlli ha avuto esito negativo, la variabile $ msg non è più vuota. Quindi è necessario completare tutti i messaggi di errore registrati in esso - aggiungere il testo "Errore" e impostare la sfumatura di rosso:
if ($ msg) $ msg = "Errore: $ msg";
E se i controlli vengono superati, prepara i dati per l'invio al tuo indirizzo:
altro {
$ userMess = "Nome:". $ _ POST ['nome']."
n ---
n ". $ utenteMess."
n
n ---
;
$ headers = "Content-Type: text/html; charset = windows-1251 / n";
$ headers. = "Da: / nX-Mailer: siteMailer";
La riga successiva avvia il mailer del tuo server e invia il messaggio preparato:
mail ($ email_recepient, $ email_subject, $ userMess, $ header);
Ora resta da comporre un messaggio per il visitatore che il suo messaggio è stato inviato:
$ msg = Il tuo messaggio è stato inviato. Grazie!
;
}
}
?>
Passaggio 4
Passaggio 4: ospita la pagina sul server.
Salva la pagina php creata con il nome e l'estensione php di cui hai bisogno e caricala sul server del tuo sito.
Naturalmente, questa è una pagina "nuda", devi progettarla allo stesso modo del resto delle pagine del tuo sito. Oppure prendi gli elementi di questa pagina e aggiungili a una pagina esistente sul sito.