27.10.2017, 11:11
|
Интересующийся
|
|
Регистрация: 27.10.2017
Сообщений: 24
|
|
Нужна помощь в написании js для модального окна или статья
Здравствуйте, есть уже код модального окна и кнопка. Почти все готово,осталось одно заставить кнопку отправить функционировать. Так вот прошу помочь мне с этим.Нужно чтобы все содержимое отправлялось на указанный мною email адрес в такой форме -
Код:
|
<div class="modal-content">
<form>
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title">Резюме Dota2</h4>
</div>
<div class="modal-body">
<ul>
<li>Требуются бустеры с высоким рейтингом</li>
<li>Ваш соло рейтинг ОТ 5600 MMR</li>
<li>Большое кол-во свободного времени</li>
</ul>
<div class="form-group">
<label for="inputMmr" class="control-label pull-left">Solo MMR</label>
<input type="text" class="form-control" id="inputMmr" name="Solo_MMR" placeholder="Ваш solor mmr">
</div>
<div class="form-group">
<label for="inputMmr" class="control-label pull-left">Ваш возраст</label>
<input type="text" class="form-control" id="inputMmr" name="age" placeholder="Ваш возраст">
</div>
<div class="form-group">
<label for="inputMmr" class="control-label pull-left">Чем вы занимаетесь</label>
<input type="text" class="form-control" id="inputMmr" name="hobby" placeholder="Чем вы занимаетесь">
</div>
<div class="form-group">
<label for="inputMmr" class="control-label pull-left">Сколько часов в день играете</label>
<input type="text" class="form-control" id="inputMmr" name="how_much_time_play" placeholder="Сколько часов в день играете">
</div>
<div class="form-group">
<label for="inputMmr" class="control-label pull-left">Почему хотите получить эту работу</label>
<input type="text" class="form-control" id="inputMmr" name="why_yoo_want" placeholder="Почему хотите получить эту работу">
</div>
<div class="form-group">
<label for="inputMmr" class="control-label pull-left">Ссылка на скриншот с рейтингом из доты</label>
<input type="text" class="form-control" id="inputMmr" name="link" placeholder="Ссылка">
</div>
<div class="form-group">
<label for="inputMmr" class="control-label pull-left">Ссылка на dotabuff</label>
<input type="text" class="form-control" id="inputMmr" name="link" placeholder="Ссылка">
</div>
<div class="form-group">
<label for="inputMmr" class="control-label pull-left">Ссылка на Vkontakte</label>
<input type="text" class="form-control" id="inputMmr" name="vk" placeholder="Ссылка Vk">
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Закрыть</button>
<button type="button" class="btn btn-primary act_send" data-game="dota2">Отправить резюме</button>
</div>
</form>
</div>
|
|
|
27.10.2017, 11:31
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,990
|
|
panikajo,
отправляйте форму на сервер, а он уже сформирует и таблицу, и отправить почту. В противном случае использовать чужой сервис отправления почты. Сам клиент из веб страницы почту не отправит.
|
|
27.10.2017, 11:38
|
Профессор
|
|
Регистрация: 04.12.2012
Сообщений: 3,791
|
|
panikajo, тегу form добавьте атрибуты "action" и "method".
У кнопки "отправить" смените type="button" на type="submit".
|
|
27.10.2017, 11:46
|
Интересующийся
|
|
Регистрация: 27.10.2017
Сообщений: 24
|
|
Сообщение от laimas
|
panikajo,
отправляйте форму на сервер, а он уже сформирует и таблицу, и отправить почту. В противном случае использовать чужой сервис отправления почты. Сам клиент из веб страницы почту не отправит.
|
Это понятно все, киньте пожалуйста подробную статью, как это все написать, приме так скажем.
Типо такого чет.
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (isset($_POST['name'])) {$name = $_POST['name'];}
if (isset($_POST['phone'])) {$phone = $_POST['phone'];}
// if (isset($_POST['email'])) {$email = $_POST['email'];}
if (isset($_POST['formData'])) {$formData = $_POST['formData'];}
$to = "site@sitename.com"; /*Укажите адрес, га который должно приходить письмо*/
$sendfrom = "support@sitename.ru"; /*Укажите адрес, с которого будет приходить письмо, можно не настоящий, нужно для формирования заголовка письма*/
$headers = "From: " . strip_tags($sendfrom) . "\r\n";
$headers .= "Reply-To: ". strip_tags($sendfrom) . "\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html;charset=utf-8 \r\n";
$subject = "$formData";
$message = "$formData
<b>Имя пославшего:</b> $name
<b>Телефон:</b> $phone";
$send = mail ($to, $subject, $message, $headers);
if ($send == 'true')
{
echo '<center>
Спасибо за отправку вашего сообщения!
</center>';
}
else
{
echo '<center>
<b>Ошибка. Сообщение не отправлено!</b>
</center>';
}
} else {
http_response_code(403);
echo "Попробуйте еще раз";
}?>
|
|
27.10.2017, 11:52
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,990
|
|
panikajo,
Если вы так будете отправлять почтовые сообщения, то ваша почта запросто может стать рассадником для спама. И уж об отправлении почты в сети столько написано, что читать и не перечитать. Ищите, читайте, используйте. Ну или используйте готовые разумные классы.
А насчет отправления, так в чем проблемы? Просто отправляйте форму, если нужна асинхронная отправка, значит используйте Ajax.
И это http_response_code(403); что за чудо?
for="inputMmr" у всех меток и id="inputMmr" у всех полей, это ошибка, id должно быть уникально. Вам в общем то этого в данной форме и не требуется.
Последний раз редактировалось laimas, 27.10.2017 в 11:59.
|
|
27.10.2017, 11:56
|
Интересующийся
|
|
Регистрация: 27.10.2017
Сообщений: 24
|
|
laimas , У меня нету, самого скрипта который отвечает за отправку я это имею введу. Я не знаю, как его написать, прошу помощи статей которые направят меня на это.
Тот код выше то пример.
|
|
27.10.2017, 12:16
|
Профессор
|
|
Регистрация: 27.11.2015
Сообщений: 2,899
|
|
|
|
27.10.2017, 12:22
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,990
|
|
Форма будет отправлена по адресу указанному в атрибуте тега action формы и с методом указанным в ее атрибуте method. Вам уже сказали, что это должно быть указано в форме. Удалить баги с id, вообще их удалить, в этой форме они не нужны.
Если пример и адрес отправителя не ожидается, то ваша задача проверить истинность данных прежде чем отправлять почту. Вы же не ради интереса выставляете форму клиенту, а значит либо все поля ее обязательны для заполнения, либо некоторые из них. И обязательность заполнения этих данных и должен проверить сервер. Если они не заполнены, то вернуть пользователю сообщения об ошибках заполнения. А коли речь идет о "модальности", то выгоднее эту форму оправлять посредством Ajax.
Другими словами, это надо решать комплексно, а не "у меня есть форма, как теперь отправить письмо?".
Последний раз редактировалось laimas, 27.10.2017 в 12:26.
|
|
|
|