Новини високих технологій
» » Функція PHP mail: опис, особливості застосування

Функція PHP mail: опис, особливості застосування

9-01-2019, 23:35
297
Створення веб-сайту може стати початком великого проекту, а вибір правильної технології зворотного зв'язку з клієнтом - ключ до успіху. Розробники інтернет-ресурсів часто використовують функцію PHP Mail для відправки електронної пошти. Самий зручний спосіб зробити це, коли відвідувач сайту заповнює форму.

Історія технологій PHP

Вони використовуються для розробки веб-додатків. Ці технології з'явилися випадково, як і багато хто інші великі відкриття. Расмус Лердорф шукав вирішення проблеми перевантаження на сервері, де він розміщував свою особисту сторінку і навчальну програму. Це призвело до створення PHP (Personal Home Page) в 1994. У 1995 році Rasmus випустив вихідний код і створив список розсилки для обміну ідей, поліпшення, виправлення. З тих пір мова ріс і розвивався як проект з відкритим вихідним кодом.


У 1996 році, всього через рік після опублікування, він вже використовувався на 15000 веб-сайтів. У 1998 році його присутність в Інтернеті склало майже 60000 доменів, це приблизно 1 % від загального числа існуючих проектів і блогів. В даний час PHP використовують приблизно 24 % всіх наявні веб-проектів світу.
Така популярність моделі викликана не тільки якістю, але і важливістю зворотного зв'язку. Серед сайтів, які сьогодні використовують цю технологію: WordPress, Twitter і Facebook. Тому еволюція PHP, відповідає препроцессору гіпертексту, безсумнівно, експоненціальна у всіх відносинах.

Проект з самоустанавливающимися пакетами

PHP - безкоштовний і відкритий мову з низькою кривий навчання, його синтаксис простий і відповідає базовим стандартам об'єктно-орієнтованого програмування. Складні середовища розробки не потрібні, так само як і час для освіти. Програмування ведуть без сторонньої допомоги, всі доступні IDE безкоштовні, а розробки швидкі і прості в налаштуванні.


Розгорнути проект в PHP легко, тому що він володіє пакетами самостійної інтеграції, які використовують: Apache і MySQL як для UNIX (LAMPP), так і для Windows (XAMPP). Обидва легко встановлюються і налаштовуються як настільне додаток. Користувач отримує локальний сервер з доступом до бази даних комп'ютера, готовий до розробки будь-якого проекту. Не витрачається час на проблеми з сумісністю. Крім того, він пропонує легкий доступ до баз даних і підтримує багато формати, а не тільки MySQL. Нижче наведено код для основної функції електронної пошти. Можна застосувати сценарій і використовувати форму на будь-якому веб-сайті, встановивши змінні для надсилання такого листа.
Перша частина форми перевіряє, заповнене поле вводу адреси електронної пошти. Якщо це не так, відображається HTML-форму на сторінці. Якщо онлайн-лист підготовлено, після того як відвідувач заповнить форму, воно готове до надсилання. При натисканні кнопки «Надіслати» сторінка перезавантажується, PHP перевіряє, введений адресу електронної пошти, і відправляє документ.

Популярна поштова бібліотека

Існує безліч способів доставки листів. Зазвичай відправляють електронну пошту двома способами: використовуючи вбудовану в PHP функцію Mail; використовуючи сторонню бібліотеку, таку як PHPMailer з SMTP. Перед початком використання програми знадобиться наступне: Веб-хостинг. Обліковий запис електронної пошти. Включена функція PHP Mail. Включена функція SMTP. Домен запису Hostinger MX. Mail в PHP дозволяє відправляти електронну пошту з допомогою локальної програми sendmail. Кожен раз, коли користувач запускає сервіс пошти, він викликає цю локальну програму, зазвичай персоналізовану системним адміністратором. Можна включити або відключити цю функцію в розділі "Електронна пошта" -> "панель керування поштовою службою".
PHPMailer - популярна бібліотека, що підтримує відправку пошти через функцію PHP Mail або SMTP.
Алгоритм роботи: Щоб використовувати PHPMailer з Hostinger SMTP, спочатку необхідно створити ідентифікатор в розділі «Обліковий запис електронної пошти» на панелі веб-хостингу. У користувача буде чотири поля: ім'я користувача облікового запису електронної пошти, пароль, SMTP-хост, порт SMTP. Після цього починають установку PHPMailer. Один з простих способів зробити це - використовувати Composer, який попередньо інтегрований в плани загального хостингу, тому підключаються через SSH і виконують наступну команду: cd public_html. Далі запускають: composer requires phpmailer і чекають кілька хвилин, поки установка завершиться і PHPMailer з'явиться у створеному каталозі постачальників. Для доставки використовується SMTP. Ця рядок імпортує клас PHPMailer в глобальне простір імен і включає в себе різні бібліотеки. Відправляють HTML-повідомлення. Його вміст буде взято з файлу message.html, розташованого в тому ж каталозі. Це дозволяє форматувати текст і дає більшу функціональність у порівнянні зі звичайними текстовими повідомленнями.

Запуск скрипта

PHPMailer пропонує користувачеві додаткові функції, які можна спробувати в офіційному репозиторії GitHub. Також, якщо він використовує WordPress, то може легко створити контактну форму за допомогою плагінів.
Використовують PHPMailer не тільки для відправлення повідомлень. Можна створити контактну форму, де відвідувачі або користувачі зв'язуються з сайтом. Нижче наведено кінцевий результат створення форми.
Порядок запуску скрипта: Створюють файл testphpmailer.php і заповнюють поля SMTP, які були отримані раніше. Виконують скрипт, ввівши YourDomain.com/testphpmailer.php у браузері, з'явиться повідомлення. Як тільки користувач його відправить, то отримає підтвердження, що вміст буде доставлено в скриньку електронної пошти, вказану в полі Address. Якщо контактна форма PHPMailer не працює, для перевірки функції Mail PHP додають наступний рядок, щоб дізнатися причину проблеми: $ mail-> SMTPDebug = 2.

Усунення помилок

PHPMailer - досить простий інструмент для освоєння. Але час від часу можуть виникати помилки, і тоді функція Mail PHP не працює. Поширені проблеми при відсиланні пошти: Адреса відправника відхилено - помилка означає, що сервер не зміг перевірити справжність, використовуючи надані дані. Щоб виправити її, аналізують заголовки from і переконуються, що вони відповідають існуючому поштової скриньки. Після усунення скрипт почне виконуватися. Gmail не може підтвердити, що example.com відправив повідомлення - попередження при тестуванні поштового PHP скрипта. Означає, що запис SPF не включена, адреса електронної пошти не існує або не належить користувачу. Збої DNS часто розглядаються як тайм-аути з'єднання: Тимчасовий збій у вирішенні імені», «Не вдалося вирішити хост», «Збій getaddrinfo» або подібні помилки. Перенаправлення портів. Це пов'язано з Google, і якщо користувач бачить щось на зразок імені провайдера, то існують помилки аутентифікації і перевірки сертифіката TLS. Блокування SELinux - не дозволяє PHP або веб-сервера відправляти електронну пошту, що ймовірно на RedHat/Fedora/Centos.

Розбір JSON з PHP

Підтримка JSON в PHP надзвичайно проста, тільки з однією загальною бібліотекою для обробки перетворення даних з масивів та об'єктів PHP. Вона швидко набирає популярність завдяки легкості читання, мобільності та можливості використання у веб-браузерах без додаткових баз. Якщо користувач насторожено ставиться до XML, JSON, для нього це найкращий напрямок роботи.

З XML комфортніше працювати з користувацькими даними безпосередньо у використовуваному синтаксичному аналізаторі XML. З допомогою JSON можна негайно перетворити дані в об'єкт або масив PHP і працювати з ними, використовуючи знайомі структури PHP, потоку управління і функції. Перше, що потрібно зробити додатком - перевірити функцію Mail PHP, чи відповідає отриманий код помилки очікуванням. Для простого запиту GET відповідь має бути 200 якщо він був успішним. Щоб отримати код стану з допомогою Json decode, де $ return представляє контент, який повертається з запиту API, для $ code буде встановлено значення 200. Другий аргумент функції Mail PHP Json decode post повертає результат у вигляді асоціативного масиву, а не об'єкта.
Ще кращий спосіб перевірити наявність помилки - зробити наступне: $json = json_decode($return, true); $code = $json['code']; $json = json_decode($return, true); $error = isset($json['error']); Дуже важливо, щоб код був налаштований для правильної обробки і обліку всіх помилок. Але навіть якщо запит сформовано правильно, все одно є ймовірність, що користувач отримає код помилки при його виконанні.

Перевага поштового проекту

Для програміста, який хоче вивчати PHP, мова програмування пропонує величезні переваги. У нього, мабуть, одне з найбільших інтернет-спільнот у порівнянні з іншими, і саме в рамках цієї підтримки вирішується практично будь-яка проблема. Для кожного користувача PHP важливі його можливості не тільки в нинішній мережі, але і в майбутньому. З точки зору фахівців, якщо ця технологія продовжить свій нинішній темп розвитку, адаптуючись до нових потреб і додаючи все більше функцій, у неї є майбутнє. Переваги PHP: Мова повністю безкоштовний і відкритий. Дуже низька крива навчання. Середовища розробки швидко і легко настроюються. Просте розгортання: повністю самоустановлювальні пакети з інтеграцією PHP. Легкий доступ до баз даних. Дуже велике співтовариство. Технологія PHP цікава, вона необхідна для вирішення багатьох з найбільш затребуваних завдань, пов'язаних з відправкою електронної пошти та використанням вкладень.
Цікаво по темі
Які існують електронні пошти: список, популярність, плюси і мінуси
Які існують електронні пошти: список, популярність, плюси і мінуси
Важливий сервіс в інтернеті – це електронна пошта. Вона дозволяє відправляти і отримувати листи з різних куточків планети. Електронна пошта – це не
Налаштування Mozilla Thunderbird: інструкції. Поштова програма Mozilla Thunderbird
Налаштування Mozilla Thunderbird: інструкції. Поштова програма Mozilla Thunderbird
Mozilla Thunderbird - це програма для автономної роботи з електронною поштою. Вона була створена з метою позбавити клієнта від необхідності
Jquery, Ajax: використання і функції
Jquery, Ajax: використання і функції
Термін Ajax розшифровується як Asynchronous jаvascript and XML (асинхронний jаvascript і XML) і позначає технологію побудови запитів без
Postfix: настройка, установка. Поштовий сервер Postfix
Postfix: настройка, установка. Поштовий сервер Postfix
У цій статті ми розберемо, як налаштувати поштовий сервер Postfix на базі Ubuntu Linux. Ознайомившись з рекомендаціями, ви зможете відправляти і
Налаштування Gmail SMTP: способи та нюанси
Налаштування Gmail SMTP: способи та нюанси
Simple Mail Transfer Protocol — це стандартний протокол зв'язку для надсилання повідомлень електронної пошти в бізнес-мережах та Інтернеті. SMTP був