Как да изпращате имейл с помощта на PHP поща () Функция

Съдържание:

Anonim

Какво е PHP поща?

PHP пощата е вградената PHP функция, която се използва за изпращане на имейли от PHP скриптове.

Пощенската функция приема следните параметри;

  • Имейл адрес
  • Предмет
  • Съобщение
  • CC или BC имейл адреси
    • Това е рентабилен начин за уведомяване на потребителите за важни събития.
    • Позволете на потребителите да се свържат с вас по имейл, като предоставите формуляр за контакт с нас на уебсайта, който изпраща изпратеното съдържание по имейл.
    • Разработчиците могат да го използват за получаване на системни грешки по имейл
    • Можете да го използвате, за да изпратите имейл на абонатите си за бюлетин.
    • Можете да го използвате, за да изпращате връзки за нулиране на парола на потребители, които забравят паролите си
    • Можете да го използвате за връзки за активиране / потвърждение по имейл. Това е полезно при регистриране на потребители и проверка на техните имейл адреси

В този урок ще научите -

  • Защо / кога да използвам PHP пощата
  • Прост протокол за предаване на поща
  • Дезинфекциране на въведените от потребителите имейли
  • Защитена поща

Защо / кога да използвам пощата PHP

Изпращане на поща чрез PHP

Функцията PHP поща има следния основен синтаксис

ТУК,

  • “$ To_email_address” е имейл адресът на получателя на пощата
  • „$ Subject“ е темата на имейла
  • „$ Message“ е съобщението, което трябва да бъде изпратено.
  • „[$ Headers]“ не е задължително, може да се използва за включване на информация като CC, BCC
    • CC е съкращението за копие на въглерод. Използва се, когато искате да изпратите копие на заинтересовано лице, т.е. имейл за жалба, изпратен до компания, също може да бъде изпратен като CC до борда за жалби.
    • BCC е съкращението за сляпо въглеродно копие. Подобно е на CC. Имейл адресите, включени в раздела BCC, няма да се показват на останалите получатели.

Прост протокол за предаване на поща (SMTP)

PHP mailer използва Simple Mail Transmission Protocol (SMTP) за изпращане на поща.

На хостван сървър SMTP настройките вече биха били зададени.

Настройките за SMTP поща могат да бъдат конфигурирани от файла „php.ini“ в папката за инсталиране на PHP.

Конфигуриране на SMTP настройки на вашия localhost Ако приемем, че използвате xampp на windows, намерете „php.ini“ в директорията „C: \ xampp \ php“.

  • Отворете го с помощта на бележник или друг текстов редактор. В този пример ще използваме бележник. Щракнете върху менюто за редактиране

  • Щракнете върху менюто Намери ...

  • Ще се появи диалоговото меню за намиране

  • Щракнете върху бутона Намери следващия

  • Намерете записите
    • [пощенска функция]
    • ; XAMPP: Не премахвайте полуколоната, ако искате да работите със SMTP сървър като Mercury
    • ; SMTP = localhost
    • ; smtp_port = 25
    • Премахнете точките с двоеточие преди SMTP и smtp_port и задайте SMTP на вашия smtp сървър и порта на вашия smtp порт. Вашите настройки трябва да изглеждат както следва
      • SMTP = smtp.example.com
      • smtp_port = 25
      • Обърнете внимание, че SMTP настройките могат да бъдат получени от вашите доставчици на уеб хостинг.
      • Ако сървърът изисква удостоверяване, добавете следните редове.
        • auth_username = Този имейл адрес е защитен от спам ботове. Трябва да имате активиран JavaScript, за да го видите.
        • auth_password = пример_парола
        • Запазете новите промени.
        • Рестартирайте сървъра Apache.

Пример за Php поща

Нека сега разгледаме пример, който изпраща обикновена поща.

Изход:

Забележка: горният пример взема само 4-те задължителни параметъра.

Трябва да замените горния измислен имейл адрес с реален имейл адрес.

Дезинфекциране на въведените от потребителите имейли

Горният пример използва твърдо кодирани стойности в изходния код за имейл адреса и други подробности за простота.

Да предположим, че трябва да създадете формуляр за връзка с нас, за да попълнят данните и след това да изпратят.

  • Потребителите могат случайно или умишлено да инжектират код в заглавките, което може да доведе до изпращане на нежелана поща
  • За да защитите системата си от подобни атаки, можете да създадете персонализирана функция, която дезинфекцира и проверява стойностите преди изпращането на пощата.

Нека създадем персонализирана функция, която проверява и дезинфекцира имейл адреса, използвайки вградената функция filter_var.

Функция filter_var Функцията filter_var се използва за дезинфекция и валидиране на потребителските входни данни.

Той има следния основен синтаксис.

ТУК,

  • “filter_var(… )” is the validation and sanitization function
  • “$field” is the value of the field to be filtered.
  • “SANITIZATION TYPE” is the type of sanitization to be performed on the field such as;
    • FILTER_VALIDATE_EMAIL - it returns true for valid email addresses and false for invalid email addresses.
    • FILTER_SANITIZE_EMAIL - it removes illegal characters from email addresses. info\@domain.(com) returns This email address is being protected from spambots. You need JavaScript enabled to view it…
    • FILTER_SANITIZE_URL - it removes illegal characters from URLs. http://[email protected]é returns>http://[email protected]
    • FILTER_SANITIZE_STRING - it removes tags from string values. am bold becomes am bold.

Кодът по-долу изпълнява персонализирана функция за изпращане на защитена поща.

Изход:

Защитена поща

Имейлите могат да бъдат прихващани по време на предаване от нежелани получатели.

Това може да изложи съдържанието на имейла на нежелани получатели.

Защитената поща решава този проблем, като предава имейли чрез Hypertext Transfer Protocol Secure (HTTPS).

HTTPS криптира съобщенията, преди да ги изпрати.

Обобщение

  • Вградената в PHP функция mail () се използва за изпращане на поща от PHP скриптове
  • Проверките за валидиране и дезинфекция на данните са от съществено значение за изпращането на защитена поща
  • Вградената функция PHP filter_var () осигурява лесен за използване и ефективен начин за извършване на дезинфекция и валидиране на данни