ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   PHP (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Отправка сообщений с формы обратной связи Вам на почту (https://forum.antichat.xyz/showthread.php?t=1407979)

_Nelit_ 10.11.2021 14:03

Часто разработчики используют на своих сайтах формы обратной связи. В данном гайде я покажу как сделать отправку ответа на форму который придёт Вам на указанную в скрипте почту.

В гайде всё будет разложено по спойлерам.


4OTtdGk.png_Nelit_ · 10 Ноя 2021 в 13:03' data-fancybox="lb-post-884410" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="/proxy.php?image=https%3A%2F%2Fi.imgur.com%2F4OTtdG k.png&hash=f82cd8d80932d36d104ad3fb4fd8c5c8" style="cursor: pointer;" title="4OTtdGk.png">
https://i.imgur.com/4OTtdGk.png

Цитата:

Сообщение от Спойлер

Создаём файл index.html и пишем такой код

HTML:





Код:


Forma

* {
        margin: 0;
        padding: 0;
    }

    input {
        margin: 10px 0px 10px 0px;
    }

    .forma {
        display: flex;
        justify-content: center;
    }

Send Form



project_name- Название Вашего сайта

admin_email - Почта, куда будут приходить ответы

form_subject - Тема всех писем. Советую писать "Новая заявка"

Скрытые поля с типом hidden так-же нужны. В них хранится информация куда надо отправлять ответ.


Не забываем подключить библиотеку jQuery. Она нам надо будет позже.

Цитата:

Сообщение от Спойлер

Создаём файл main.js и пишем такой код

JavaScript:





Код:

$
(
document
)
.
ready
(
function
(
)
{
// Создаём функцию
$
(
"form"
)
.
submit
(
function
(
)
{
// Если нажата кнопка Send Form в нашей форме
var
th
=
$
(
this
)
$
.
ajax
(
{
type
:
"POST"
,
url
:
"mail.php"
,
// Путь к нашему php файлу
data
:
th
.
serialize
(
)
}
)
.
done
(
function
(
)
{
// Удачное выполнение скрипта (Если отправка прошла успешно)
alert
(
"Thank you!"
)
// Отправим надпись Thank you когда всё получится
setTimeout
(
function
(
)
{
// Установим отложенный запуск функции, через 1 секунду форма будет очищена
th
.
trigger
(
"reset"
)
// Очистка формы
}
,
1000
)
}
)
;
return
false
;
}
)
}
)




Цитата:

Сообщение от Спойлер

Создаём файл mail.phpи пишем такой код

PHP:





Код:

$value ) {
        if ( $value != "" && $key != "project_name" && $key != "admin_email" && $key != "form_subject" ) {
            $message .= "
            " . ( ($c = !$c) ? '':'' ) . "
                $key
                $value
           
            ";
        }
    }
} else if ( $method === 'GET' ) {

    $project_name = trim($_GET["project_name"]);
    $admin_email  = trim($_GET["admin_email"]);
    $form_subject = trim($_GET["form_subject"]);

    foreach ( $_GET as $key => $value ) {
        if ( $value != "" && $key != "project_name" && $key != "admin_email" && $key != "form_subject" ) {
            $message .= "
            " . ( ($c = !$c) ? '':'' ) . "
                $key
                $value
           
            ";
        }
    }
}

$message = "$message";

function adopt($text) {
    return '=?UTF-8?B?'.Base64_encode($text).'?=';
}

$headers = "MIME-Version: 1.0" . PHP_EOL .
"Content-Type: text/html; charset=utf-8" . PHP_EOL .
'From: '.adopt($project_name).' ' . PHP_EOL .
'Reply-To: '.$admin_email.'' . PHP_EOL;

mail($admin_email, adopt($form_subject), $message, $headers );




Цитата:

Сообщение от Спойлер

Вот мы и добрались до тестов. Я использую хостинг Ukraine.

Через FTPклиент подключаемся к FTPсайта

Перекидываем все файлы нашего проекта на хостинг


Screenshot_3.png_Nelit_ · 10 Ноя 2021 в 13:03' data-fancybox="lb-post-884410" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/121629/" style="cursor: pointer;" title="Screenshot_3.png">
https://forum.antichat.xyz/attachments/27884410/

Заходим в браузер и вводим нашу ссылку

https://forum.antichat.xyz/attachments/27884410/

Заполняем форму и отправляем

https://forum.antichat.xyz/attachments/27884410/

Получаем ответ о том, что письмо отправлено и идём проверять почту

Screenshot_1.png_Nelit_ · 10 Ноя 2021 в 13:03' data-fancybox="lb-post-884410" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/121635/" style="cursor: pointer;" title="Screenshot_1.png">
https://forum.antichat.xyz/attachments/27884410/

Откроем письмо более подробно и видим таблицу.

Screenshot_2.png_Nelit_ · 10 Ноя 2021 в 13:03' data-fancybox="lb-post-884410" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/121636/" style="cursor: pointer;" title="Screenshot_2.png">
https://forum.antichat.xyz/attachments/27884410/

Вот так всё просто.

4OTtdGk.png_Nelit_ · 10 Ноя 2021 в 13:03' data-fancybox="lb-post-884410" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="/proxy.php?image=https%3A%2F%2Fi.imgur.com%2F4OTtdG k.png&hash=f82cd8d80932d36d104ad3fb4fd8c5c8" style="cursor: pointer;" title="4OTtdGk.png">
https://i.imgur.com/4OTtdGk.png

Забыл сказать, скрипт сам находит все строки которые надо заполнить. Хоть их будет 100 миллиардов штук, скрипт сам найдёт и добавит вам в таблицу. Так-же мне письмо пришло в спам, куда придёт Вам я не знаю. Конец!

Ссылка на весь проект тут -
Клик

odelyaZ 11.11.2021 15:26

Прикольно, молодец. Только вот html не язык программирования)

_Nelit_ 11.11.2021 15:40

Цитата:

Сообщение от odelyaZ

Прикольно, молодец. Только вот html не язык программирования)

Правда? Конечно не язык. Это язык гипертекстовой разметки.

odelyaZ 12.11.2021 00:58

Цитата:

Сообщение от _Nelit_

Правда? Конечно не язык. Это язык гипертекстовой разметки.

Ну указывать его на равне с языками программирования не совсем правильно. Тогда ты мог уже и CSS указать)

_Nelit_ 12.11.2021 01:35

Цитата:

Сообщение от odelyaZ

Ну указывать его на равне с языками программирования не совсем правильно. Тогда ты мог уже и CSS указать)

https://forum.antichat.xyz/attachments/27885752/

Указывал так, как сказал GitHub. Что-бы ко мне уж точно не докопались...

odelyaZ 13.11.2021 02:12

Цитата:

Сообщение от _Nelit_

Указывал так, как сказал GitHub. Что-бы ко мне уж точно не докопались...

ну лаааадно

Corrygan228 15.11.2021 18:14

Всё работает, автору респект

SADFI2259X 17.11.2021 15:58

samp ??

_Nelit_ 17.11.2021 15:59

Цитата:

Сообщение от SADFI2259X

samp ??

Причём тут самп? Видишь раздел - "Веб разработка"?

Livarka 23.11.2021 11:15

Какой опыт в веб разработке у тебя?


Время: 22:53