Вебсайтыңыздан почтаны кантип жасасаңыз болот

Мазмуну:

Вебсайтыңыздан почтаны кантип жасасаңыз болот
Вебсайтыңыздан почтаны кантип жасасаңыз болот

Video: Вебсайтыңыздан почтаны кантип жасасаңыз болот

Video: Вебсайтыңыздан почтаны кантип жасасаңыз болот
Video: Кантип Сальто Жасоо Керек? 5 кольцо 2024, Май
Anonim

Пикир формасы - бул олуттуу көйгөйлөрдү чечүү үчүн түзүлгөн ар кандай сайттын милдеттүү атрибуту. Сайтка кирген адамдан анын ээсине электрондук почта билдирүүсүн уюштуруунун эң жөнөкөй жолдорунун бири PHP почта буйругун колдонуу. Төмөндө муну кантип жасоо керектиги жөнүндө этап-этабы менен келтирилген.

Сайттагы формадан кат жөнөтүү
Сайттагы формадан кат жөнөтүү

Ал зарыл

PHP жана HTML тилдерин билүү

Нускамалар

1 кадам

1-кадам: жаңы PHP документин түзүү.

Каалаган тексттик редактордо (мисалы, стандарттык блокнотто) жаңы документ түзүңүз. Ага электрондук почта билдирүүлөрүн жөнөтүү механизмин түзүү учурунда толуктай турган барактын HTML кодунун рамкасын токтоосуз киргизиңиз:

Электрондук почта билдирүүсүн жөнөтүү

2-кадам

2-кадам: Документиңизге html формасын кошуңуз.

Эми сиз html тэгдерин жана браузерге көрсөтмөлөрдү кошуп, келүүчүгө маалыматтарды киргизип, серверге жөнөтүшүңүз керек. Биринчиден, форманын ачылыш теги:

Метод атрибуту браузер серверге маалыматты кандайча жөнөтүшү керектигин аныктайт.

Бул жерде сиз phpге көрсөтмө киргизишиңиз керек - ал маалыматты серверге жөнөткөндөн кийин келүүчү үчүн билдирүү чыгат жана алар скрипт менен иштелип чыгат:

Кийинки сапта мейман өзүнүн атын киргизиши керек болгон талааны түзөт:

Сиздин атыңыз:

Бул жерде type атрибуту бул форма элементинин түрүн - жөнөкөй текст кутучасын көрсөтөт. Жана ат атрибуту бул талаага киргизилген өзгөрүлмө аталышы - серверге - аты. Тэг

- "араба кайтып келүү".

Андан кийин, сиз конок менен байланышуу үчүн анын электрондук почта дарегин көрсөтүүгө мүмкүнчүлүк беришибиз керек:

Электрондук почта:

Бул жерде бардыгы мурунку сапка окшош. Серверге келген адамдын электрондук почта дареги жөнөтүлө турган өзгөрмөнүн аты - электрондук почта.

Эми билдирүүнүн текстин киргизүү үчүн көп барактуу текст талаасын (textarea теги) кошушубуз керек:

Билдирүү:

Саптар жана тилкелер атрибуттары ушул талаанын көлөмүн көрсөтөт - саптар катарлардын санын, ал эми ар бир катардагы белгилердин санын көрсөтөт. Киргизилген текст mess деп аталган өзгөрмө менен жөнөтүлөт.

Бардык талаалардан кийин билдирүү жөнөтүү үчүн баскычты кошуңуз:

Бул тегдин маани атрибуту баскычтагы этикетканын текстин камтыйт ("Жөнөтүү").

PHP сценарийинин иштеши үчүн дагы бир өзгөрүлмө керек болот, аны формадагы маалыматтар менен кошо жөнөтүү керек. Аны келген адамдан жашырылган форма элементине жайгаштырыңыз:

Бул өзгөрмөнүн аты "act", ал эми өтүп кеткен маани "send".

Жабуу формасынын тегин кошуу гана калды:

3-кадам

3-кадам: формадагы маалыматтарды иштетүү үчүн php кодун кошуңуз.

"Жөнөт" деген баскычты басып, конок өзү киргизген маалыматты жөнөтөт. Маалыматтарды жөнөтүү үчүн скрипттин Интернет дарегин көрсөтүүгө тийиш болгон форма тегинде эч кандай аракет атрибуту жок болгондуктан, алар ошол эле барактын дарегине жөнөтүлөт. Андыктан, бул баракчанын html-кодуна php көрсөтмөлөрүн кошуп, маалыматты тастыктоо жана формадан электрондук почта дарегиңизге жөнөтүү керек.

Алар php тегин ачуудан башташы керек:

<? php

Кийинки сапта конок үчүн билдирүүнү камтыган өзгөрмөнү көрсөтүңүз. Бош болгондо:

$ msg = ;

Эми скрипт формадан маалыматтар жөнөтүлгөндүгүн текшериши керек. POST ыкмасы менен жиберилген маалыматтарды алган сервер, аны $ _POST деген супер глобалдык массивге жайгаштырат. Демек, скрипт бул массивдеги формадан кандайдыр бир маалымат бар же жок экендигин текшериши керек. Конок талаалардын бирөөсүн дагы толтурбашы мүмкүн, бирок жашырылган өзгөрүлмө дагы болушу керек - биз анын бар экендигин текшеребиз:

if ($ _ POST ['act'] == "жөнөтүү") {

Эгер ушундай өзгөрмө бар болсо, анда скрипттин көрсөтмөлөрүнүн кийинки блогу аткарылат. Ыңгайлуу болуш үчүн, ушул блоктун башында кийинчерээк өзгөртө турган өзгөрмөлөрдү коюңуз:

$ email_length = 500;

Бул коноктордун билдирүүсүндө уруксат берилген белгилердин максималдуу саны.

$ email_html = false;

Эгер колдонуучу билдирүүгө html тэгдерди киргизсе, анда алар скрипт менен кесилет. Эгер алар калтырылышы керек болсо, анда бул өзгөрмөнүн жалган маанисин true менен алмаштырыңыз.

$ email_recepient = "[email protected]";

Бул сиздин электрондук почта дарегиңиз, ага скрипт келүүчүлөрдөн билдирүүлөрдү жөнөтүшү керек.

$ email_subject = "Сайтка кирген адамдын билдирүүсү";

Өзгөрмө сизге жөнөтүлгөн электрондук почтанын тематикалык сабында көрсөтүлгөн текстти камтыйт.

$ 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,}) $ / ";

Бул өзгөрүлмө өзгөрүлбөшү керек - анда электрондук почта талаасына мейман киргизген электрондук почта дарегинин форматын тастыктоо үчүн скрипт тарабынан колдонулган кадимки сөз айкашынын үлгүсү камтылган. Кийинки сапта бул текшерүү болот:

if ((! $ _ POST ['email']) || (! preg_match ($ email_regex, $ _POST ['email']))) $ msg. = "Жараксыз электрондук почта дареги көрсөтүлгөн.";

Эгер конок аны менен байланышуу үчүн туура эмес даректи так көрсөткөн болсо, анда скриптте бул тууралуу билдирүү болот. Мындай билдирүүлөрдүн бардыгы сценарийдин аягына чейин $ msg өзгөрмөсүндө чагылдырылат.

Эми билдирүүнүн тексти бар экендигин текшерүү:

if (! $ _ POST ['mess']) $ msg. = "Билдирүүнүн тексти жок";

Эгер конок текст талаасын бош калтырса, анда $ msg өзгөрмөсүнө бул тууралуу билдирүү кошулат.

Эгер $ email_html өзгөрмөсүндө билдирүүнүн текстинен HTML тегдерин алып салууну көрсөткөн болсоңуз, анда скрипт муну төмөнкү эки сапта жасайт:

$ userMess = $ _POST ['mess'];

if (! $ email_html) $ userMess = strip_tags ($ userMess);

Бардык текшерүүлөрдүн аягында - билдирүүнүн узактыгын текшерүү:

if (strlen ($ userMess)> $ email_length) $ msg. = "Билдирүүнүн тексти уруксат берилген узундуктан узунураак ($ email_length белгилери).

n ;

Эгерде текшерүүлөрдүн жок дегенде бири өтпөй калса, анда $ msg өзгөрмөсү бош болбой калат. Андан кийин ага жазылган бардык ката билдирүүлөрүн толтурушуңуз керек - "Ката" текстин кошуп, кызыл түстүн көлөкөсүн коюңуз:

if ($ msg) $ msg = "Ката: $ msg";

Эгерде текшерүүлөр өтүп кетсе, анда дарегиңизге жөнөтүү үчүн маалыматтарды даярдаңыз:

else {

$ userMess = "Аты-жөнү:". $ _ POST ['name']."

n ---

n ". $ userMess."

n

n ---

n ;

$ headers = "Content-Type: text / html; charset = windows-1251 / n";

$ headers. = "Кимден: / nX-Mailer: siteMailer";

Кийинки сап сервердин почтасын баштап, даярдалган билдирүүнү жөнөтөт:

почта ($ email_recepient, $ email_subject, $ userMess, $ headers);

Эми конокко анын билдирүүсү жөнөтүлгөндүгүн билдирүү кала берет:

$ msg = Сиздин билдирүүңүз жөнөтүлдү. Рахмат!

n ;

}

}

?>

4-кадам

4-кадам: баракты серверде жайгаштырыңыз.

Түзүлгөн php баракчаны сизге керек болгон ысым жана php кеңейтүүсү менен сактап, серверге өз сайтыңызга жүктөп бериңиз.

Албетте, бул "жылаңач" баракча, аны өз сайтыңыздагы калган баракчалардай кылып иштеп чыгуу керек. Же ушул барактын элементтерин алып, аларды сайттагы баракка кошуңуз.

Сунушталууда: