Et tilbakemeldingsskjema er et obligatorisk attributt for ethvert nettsted som er opprettet for å løse alvorlige problemer. En av de enkleste måtene å organisere en e-post fra en besøkende til eieren er å bruke PHP mail-kommandoen. Nedenfor er en trinnvis instruksjon om hvordan du gjør dette.
Det er nødvendig
Grunnleggende kunnskap om PHP- og HTML-språk
Bruksanvisning
Trinn 1
Trinn 1: Opprett et nytt php-dokument.
Opprett et nytt dokument i hvilken som helst tekstredigerer (for eksempel i standard notisblokk). Angi straks rammen til html-koden på siden, som du vil supplere under opprettelsen av mekanismen for sending av e-postmeldinger:
Sende en e-postmelding
Steg 2
Trinn 2: legg til et HTML-skjema i dokumentet.
Nå må du legge til mellom html-kodene og instruksjonene for nettleseren for å vise et skjema for den besøkende å legge inn data og sende dem til serveren. Først åpningskoden for skjemaet:
Metodeattributtet spesifiserer hvordan nettleseren skal sende informasjon til serveren.
Her må du sette inn en instruksjon i php - den vil vise en melding for den besøkende etter at han har sendt dataene til serveren og de blir behandlet av skriptet:
Den neste linjen vil danne et felt der den besøkende må oppgi navnet sitt:
Navnet ditt:
Her spesifiserer typeattributtet typen av dette skjemaelementet - en enkel tekstboks. Og navnattributtet er navnet på variabelen der de som er angitt i dette feltet vil bli overført til servernavnet. stikkord
- "en vognretur".
Deretter må du gi den besøkende muligheten til å spesifisere e-postadressen for å kontakte ham:
E-post:
Alt her ligner på forrige linje. Navnet på variabelen som e-postadressen til den besøkende skal sendes til serveren er e-post.
Nå må vi legge til et flersidig tekstfelt (textarea tag) for å legge inn meldingsteksten:
Beskjed:
Attributtene for rader og kolonner angir størrelsen på dette feltet - rader angir antall rader, og kolonner angir antall tegn i hver rad. Den angitte teksten vil bli sendt i en variabel som heter rot.
Etter alle feltene, legg til en knapp for å sende en melding:
Verdiattributtet til denne taggen inneholder teksten på etiketten på knappen ("Send").
For at php-skriptet skal fungere, er det behov for en variabel til, som må sendes sammen med dataene fra skjemaet. Plasser den i et skjemaelement skjult for den besøkende:
Navnet på denne variabelen er "handling" og den passerte verdien er "send".
Det eneste som er igjen å gjøre er å legge til den avsluttende skjemaet:
Trinn 3
Trinn 3: Legg til php-kode for å behandle data fra skjemaet.
Ved å trykke på knappen "Send" vil den besøkende sende informasjonen han har angitt. Siden det ikke er noe handlingsattributt i skjemikoden, som må indikere skriptets Internett-adresse for å sende dataene, vil de sendes til adressen til den samme siden. Derfor må du legge til php-instruksjoner til HTML-koden på denne siden for å motta, validere og sende data fra skjemaet til e-postadressen din.
De bør begynne med den innledende php-taggen:
<? php
På neste linje spesifiserer du en variabel som inneholder meldingen til den besøkende. Mens den er tom:
$ msg = ;
Nå skal skriptet sjekke om dataene ble sendt fra skjemaet. Serveren mottar data sendt etter POST-metoden, og plasserer den i et superglobalt utvalg med navnet $ _POST. Så skriptet må sjekke om det er informasjon fra skjemaet i denne matrisen. Den besøkende har kanskje ikke fylt ut noen av feltene, men den skjulte variabelen må fremdeles være tilstede - vi vil sjekke dens nærvær:
hvis ($ _ POST ['act'] == "send") {
Hvis det er en slik variabel, vil neste blokk med skriptinstruksjoner bli utført. For enkelhets skyld plasserer du i begynnelsen av denne blokken variabler som du kan endre senere:
$ email_length = 500;
Dette er maksimalt antall tegn som er tillatt i en besøksmelding.
$ email_html = false;
Hvis brukeren skriver inn html-koder i meldingen, blir de kuttet av skriptet. Hvis de skulle være igjen, erstatt den falske verdien til denne variabelen med sann.
$ email_recepient = "[email protected]";
Dette er din e-postadresse som manuset skal sende meldinger fra besøkende til.
$ email_subject = "Melding fra besøkende på nettstedet";
Variabelen inneholder teksten som vil bli angitt i emnelinjen i e-posten som er sendt til deg.
$ 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,})) $ / ";
Denne variabelen skal ikke endres - den inneholder det regulære uttrykksmønsteret som brukes av skriptet for å validere formatet på e-postadressen som ble lagt inn av den besøkende i e-postfeltet. Den neste linjen inneholder denne sjekken:
if ((! $ _ POST ['email']) || (! preg_match ($ email_regex, $ _POST ['email']))) $ msg. = "En ugyldig e-postadresse ble spesifisert.";
Hvis den besøkende tydelig har oppgitt feil adresse for å kontakte ham, vil manuset vise en melding om dette. Alle slike meldinger er oppsummert i $ msg-variabelen til slutten av skriptet.
Sjekk nå for tilstedeværelsen av selve meldingsteksten:
if (! $ _ POST ['mess']) $ msg. = "Ingen meldingstekst";
Hvis den besøkende lot tekstfeltet være tomt, vil en melding om dette bli lagt til $ msg-variabelen.
Hvis du i $ email_html-variabelen spesifiserte fjerning av html-koder fra meldingsteksten, vil skriptet gjøre dette på følgende to linjer:
$ userMess = $ _POST ['mess'];
hvis (! $ email_html) $ userMess = strip_tags ($ userMess);
Og på slutten av alle kontroller - sjekke lengden på meldingen:
if (strlen ($ userMess)> $ email_length) $ msg. = "Meldingsteksten er lengre enn den tillatte lengden ($ email_length characters).
n ;
Hvis minst en av kontrollene mislyktes, er variabelen $ msg ikke lenger tom. Deretter må du fullføre alle feilmeldingene som er registrert i den - legg til teksten "Feil" og sett fargen på rødt:
if ($ msg) $ msg = "Feil: $ msg";
Og hvis kontrollene er bestått, så klargjør dataene for sending til adressen din:
annet {
$ userMess = "Navn:". $ _ POST ['navn']."
n ---
n ". $ userMess."
n
n ---
n ;
$ headers = "Content-Type: text / html; charset = windows-1251 / n";
$ headers. = "Fra: / nX-Mailer: siteMailer";
Neste linje starter serverens mailer og sender den forberedte meldingen:
e-post ($ email_recepient, $ email_subject, $ userMess, $ headers);
Nå gjenstår det å komponere en melding til den besøkende om at meldingen hans er sendt:
$ msg = Meldingen din er sendt. Takk!
n ;
}
}
?>
Trinn 4
Trinn 4: vert siden på serveren.
Lagre den opprettede php-siden med navnet og php-utvidelsen du trenger, og last den opp til serveren til nettstedet ditt.
Selvfølgelig er dette en "naken" side, du må designe den på samme måte som resten av sidene på nettstedet ditt. Eller ta elementene på denne siden og legg dem til en eksisterende side på nettstedet.