Дія надіслати копію на мій e-mail. Робота з полями "Кому" ("То"), "Копія" ("Сс"), "Прихована копія" ("Вс")
Доброго часу! Сьогодні ми поговоримо про резервне копіюванняСМС шляхом надсилання всіх повідомлень зі смартфона на електронну пошту. Це може знадобитися як просто для збереження листування, так і для подальшої обробки повідомлень, наприклад пошуку в повідомленнях потрібної інформації (контактів, імен, цін та іншого) сторонніми додатками, які в свою чергу працюють з електронною поштою. Розберемо варіант такого копіювання з використанням смартфона, що працює на Android.
Створюємо поштову скриньку
Для надсилання та збереження всіх повідомлень на E-Mail, для початку потрібно зареєструвати поштову скриньку, для цього чудово підійде пошта від yandex.ru. Можна також використовувати свою діючу поштову скриньку, але я рекомендую зареєструвати нову. По-перше з часом у ньому накопичиться велика кількість СМС повідомлень, які можуть заважати при роботі зі звичайними листами, а по-друге у випадку якщо ви будете підключати поштову скриньку до стороннього сервісу для аналітики, не вказувати в ньому логін і пароль від основного E-Mail .
Встановлюємо на смартфон з Android додаток SMS Backup +
Для надсилання всіх SMS повідомлень на поштову скриньку потрібно встановити і налаштувати спеціальний додаток SMS Backup+, завантажити яке можна на сайті play.goole.com або apk-dl.com (альтернатива для смартфонів, що не використовують Google Play) або .
Програма протестована на Android: 3. XX, 4. XX, 5. XX, 6. XX; Заявлено підтримку версії 2.xx.
Налаштовуємо SMS Backup +
- Запускаємо додаток;
- Після запуску програми, в меню вибираємо пункт: Advanced settings;
- Далі переходимо до Backup settings;
- Встановлюємо галочки на Backup SMS та Email subject prefix, знімаємо галочки з Backup MMS, Backup Call log (MMS та історія дзвінків нам не потрібні, хоча їх теж можете резервувати);
- Повертаємося в попереднє меню та переходимо до розділу IMAP Server settings;
- Вибираємо пункт меню Authentication,
встановлюємо значення параметра Plain text; - Вибираємо пункт меню Server address, прописуємо значення: imap.yandex.ru:993
- Вибираємо пункт меню Security прописуємо значення: SSL
- Вибираємо пункт меню Login (You IMAP account), вказуємо логін, потім вибравши пункт меню Password (You IMAP account password), вказуємо пароль від yandex.ru пошти;
- У головному меню встановлюємо галочку Auto backup;
- Далі переходимо в Auto backup settings, вибираємо пункт меню Regular schedule та встановлюємо часовий інтервал, з періодичністю якого СМС надсилатимуть на вказаний нами обліковий запис поштової скриньки(наприклад, кожні 2 години).
Додаток SMS Backup + дозволяє не тільки робити резервні копіїна E-Mail, а й відновлювати повідомлення з нього. Відповідні установки відновлення можна знайти в розділі Advanced settings -> Restore settings.
Після надсилання повідомлень на E-Mail, всі вони будуть розміщені у папці під назвою SMS.
Аналізуємо СМС, передані на Email
Після отримання списку SMS на адресу електронної пошти, можна за допомогою спеціального програмного забезпеченняаналізувати дані, що містяться в них. Наприклад, можна відстежувати СМС від банку з повідомленнями про грошові надходження і списання, на підставі чого вести фінансовий облік в автоматичному режимі. Подібне рішення реалізовано мною для «сайту спільних покупок», коли всі SMS повідомлення від Банку отримані Організаторами СП збираються в одному місці, аналізуються і на підставі них, система в панелі управління виводить дані про те — який з користувачів зробив замовлення, зробив оплату.
Однією з найбільш популярних функцій на сайті є форма заявки або замовлення, дані з якої надсилаються на пошту власнику сайту. Як правило, такі форми є простими і складаються з двох трьох полів для введення даних. Як створити таку форму замовлення? Тут потрібне використання мови розмітки HTML та мови програмування PHP.
Мова розмітки HTML сама по собі нескладна, потрібно лише розібратися в тому як і де ставити ті чи інші теги. З мовою програмування PHP все трохи складніше.
Для програміста створити таку форму не важко, а от HTML верстальнику може здатися складним деякі дії.
Створюємо форму відправлення даних у html
Перший рядок буде наступним
Тепер зберемо всі разом.
Тепер зробимо так, щоб поля у формі стали обов'язковими для заповнення. Маємо наступний код:
Створюємо файл, який приймає дані з HTML форми
Це буде файл із ім'ям send.php
У файлі першому етапі потрібно прийняти дані з посаду масиву. Для цього створюємо дві змінні:
$fio = $_POST["fio"];
$email = $_POST["email"];
Перед назвами змінних у php ставиться знак $, наприкінці кожного рядка ставиться крапка з комою. $_POST це масив у який передаються даний з форми. У формі html при цьому вказано метод відправлення method = "post". Так, прийнято дві змінні з форми html. Для захисту свого сайту потрібно провести ці змінні через кілька фільтрів - функцій php.
Перша функція перетворює всі символи, які користувач спробує додати до форми:
При цьому нові змінні в PHP не створюються, а використовуються вже наявні. Що зробить фільтр, він перетворить символ "<" в "<". Также он поступить с другими символами, встречающимися в html коде.
Друга функція декодує URL, якщо користувач спробує його додати у форму.
$fio = urldecode($fio);
$email = urldecode($email);
Третьою функцією ми видалимо прогалини з початку і кінця рядка, якщо такі є:
$ fio = trim ($ fio);
$ email = trim ($ email);
Існують інші функції, що дозволяють відфільтрувати змінні php. Їх використання залежить від того, наскільки ви побоюєтеся того, що зловмисник спробує додати програмний код у цю форму надсилання даних на пошту html.
Перевірка даних, що передаються від HTML форми у файл PHP
Для того, щоб перевірити, чи цей код працює, чи передаються дані можна просто їх вивести на екран за допомогою функції echo:
echo $fio;
echo "
";
echo $email;
Другий рядок тут потрібний для того, щоб розділити виведення змінних php на різні рядки.
Надсилаємо отримані дані з форми HTML на пошту за допомогою PHP
Для надсилання даних на пошту потрібно скористатися функцією mail у PHP.
mail("на яку адресу відправити", "тема листа", "Повідомлення (тіло листа)","From: з якого email відправляється лист \r\n");
Наприклад, потрібно надіслати дані на email власника сайту чи менеджера [email protected].
Тема листа має бути зрозумілою, а повідомлення листа має містити те, що вказав користувач у формі HTML.
mail(" [email protected]", "Заявка із сайту", "ПІБ:".$fio.". E-mail: ".$email ,"From: [email protected]\r\n");
Необхідно додати умову, яка перевірить чи відправилася форма за допомогою PHP на вказану адресу електронної пошти.
if (mail(" [email protected]", "Замовлення із сайту", "ПІБ:".$fio.". E-mail: ".$email ,"From: [email protected]\r\n"))
{
echo "повідомлення успішно надіслано";
) else (
}
Таким чином, програмний код файлу send.php, який відправить дані HTML форми на пошту, буде виглядати наступним чином:
$fio = $_POST["fio"];
$email = $_POST["email"];
$fio = htmlspecialchars($fio);
$email = htmlspecialchars($email);
$fio = urldecode($fio);
$email = urldecode($email);
$ fio = trim ($ fio);
$ email = trim ($ email);
// echo $ fio;
// echo "
";
// echo $ email;
if (mail(" [email protected]", "Заявка із сайту", "ПІБ:".$fio.". E-mail: ".$email ,"From: [email protected]\r\n"))
( echo "повідомлення успішно надіслано");
) else (
echo "при надсиланні повідомлення виникли помилки";
}?>
Три рядки для перевірки, чи передаються дані у файл закоментовані. При необхідності їх можна видалити, оскільки вони були потрібні тільки для налагодження.
Поміщаємо HTML та PHP код відправлення форми в один файл
У коментарях до цієї статті багато хто запитує про те, як зробити, щоб і HTML форма і PHP код відправки даних на пошту знаходилися в одному файлі, а не двох.
Для реалізації такої роботи потрібно помістити HTML код форми у файл send.php та додати умову, яка перевірятиме наявність змінних у масиві POST (цей масив передається з форми). Тобто, якщо змінні в масиві не існують, потрібно показати користувачеві форму. Інакше потрібно прийняти дані з масиву та надіслати їх адресату.
Давайте подивимося, як змінити PHP код у файлі send.php:
//перевіряємо, чи існують змінні в масиві POST
if(!isset($_POST["fio"]) and !isset($_POST["email"]))(
?> ) else (
//показуємо форму
$fio = $_POST["fio"];
$email = $_POST["email"];
$fio = htmlspecialchars($fio);
$email = htmlspecialchars($email);
$fio = urldecode($fio);
$email = urldecode($email);
$ fio = trim ($ fio);
$ email = trim ($ email);
if (mail(" [email protected]", "Заявка із сайту", "ПІБ:".$fio.". E-mail: ".$email ,"From: [email protected]\r\n"))(
echo "Повідомлення успішно надіслано";
) else (
echo "При надсиланні повідомлення виникли помилки";
}
}
?>
Існування змінної в масиві POST ми перевіряємо PHP функцією isset(). Знак оклику перед цією функцією в умові означає заперечення. Тобто, якщо змінної не існує, потрібно показати нашу форму. Якби я не поставив знак оклику, то умова дослівно означало б - "якщо існує, то показати форму". А це неправильно у нашому випадку. Звичайно, ви можете перейменувати його в index.php. Якщо будуть перейменовувати файл, то не забудьте перейменувати назву файлу і в рядку