Created
June 24, 2019 11:07
-
-
Save designervoid/160fbec1fafb960c65ea9e00a4029c0d to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!-- START OF HTML --> | |
<!-- КНОПКА--> | |
<div class="page-wrapper"> | |
<a class="btn trigger" href="#">Открыть форму</a> | |
</div> | |
<!-- МОДАЛЬНОЕ ОКНО--> | |
<div class="modal-wrapper"> | |
<div class="head"></div> | |
<div class="modal"> | |
<div class="content"> | |
<div class="good-job"> | |
<p style="padding: 20px 0 0;color: gray;margin: 0;font-size: 14px;">ОСТАВЬТЕ СВОИ ДАННЫЕ И МЫ С ВАМИ СВЯЖЕМСЯ</p> | |
<div class="text"> | |
</div> | |
<form class="form_modal_window" action=""> | |
<input type="text" name="name" placeholder="Ваше имя" required> | |
<input type="email" name="email" placeholder="Ваш email" required> | |
<input type="phone" name="phone" placeholder="Ваш телефон" required> | |
<input type="hidden" name="type_complect" value="complect-1"> | |
<input class="form_sub" name="sub" type="submit" value="send"> | |
</form> | |
<div id="erconts"></div> | |
</div> | |
</div> | |
</div> | |
</div> | |
<!--СКРИПТ ДЛЯ МОДАЛЬНОГО ОКНА--> | |
<script> | |
$( document ).ready(function() { | |
$('.trigger').on('click', function() { | |
$('.modal-wrapper').toggleClass('open'); | |
$('.page-wrapper').toggleClass('blur-it'); | |
return false; | |
}); | |
$('.head').on('click', function (){ | |
$('.modal-wrapper').removeClass('open'); | |
}) | |
}); | |
</script> | |
<script> | |
$(document).ready(function() { | |
$('.form_sub').click(function(){ | |
$.ajax({ | |
type: "POST", //указываем что метод отправки POST | |
url:"insert.php", // указываем адрес обработчика | |
data:$('.form_modal_window').serialize(), //указываем данные которые будут передаваться обработчику | |
/* Мы указываем id формы - $('#callbacks'), и методом serialize() забираем значения всех полей. */ | |
error:function(){$("#erconts").html("Произошла ошибка!");}, | |
/* если произойдет ошибка в элементе с id erconts выведется сообщение*/ | |
beforeSend: function() { | |
$("#erconts").html("<p style='color: orangered;'>Отправляем данные...</p>"); | |
}, | |
success: function(result){ | |
/* В случае удачной обработки и отправки выполнится следующий код*/ | |
$('#erconts').html(result); | |
checkThis(); | |
} | |
}); | |
return false; | |
}); | |
}); | |
</script> | |
<!-- END OF HTML --> | |
____________________________________________________________________________________________________ | |
// START OF PHP | |
<?php | |
/* Attempt MySQL server connection. Assuming you are running MySQL | |
server with default setting (user 'root' with no password) */ | |
try { | |
$pdo = new PDO("mysql:host=localhost;dbname=dbname", "usr", "passwrd", array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8")); | |
// Set the PDO error mode to exception | |
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); | |
} catch(PDOException $e){ | |
die("ERROR: Could not connect. " . $e->getMessage()); | |
} | |
// Attempt insert query execution | |
try{ | |
// Create prepared statement | |
$sql = "INSERT INTO dta (name, email, phone, type_complect) VALUES (:name, :email, :phone, :type_complect)"; | |
$stmt = $pdo->prepare($sql); | |
// Bind parameters to statement | |
$stmt->bindParam(':name', $_POST['name']); | |
$stmt->bindParam(':email', $_POST['email']); | |
$stmt->bindParam(':phone', $_POST['phone']); | |
$stmt->bindParam(':type_complect', $_POST['type_complect']); | |
// Execute the prepared statement | |
$stmt->execute(); | |
} catch(PDOException $e) { | |
die("ERROR: Could not able to execute $sql. " . $e->getMessage()); | |
} | |
// Close connection | |
unset($pdo); | |
/*ПОМЕЩАЕМ ДАННЫЕ ИЗ ПОЛЕЙ В ПЕРЕМЕННЫЕ*/ | |
$name = $_POST["name"]; | |
$email = $_POST["email"]; | |
$tel = $_POST["phone"]; | |
$type_complect = $_POST["type_complect"]; | |
/*ЗДЕСЬ ПРОВЕРЯЕМ ЕСЛИ ХОТЯ БЫ ОДНО ИЗ ПОЛЕЙ НЕ ЗАПОЛНЕНО МЫ ВОЗВРАЩАЕМ СООБЩЕНИЕ*/ | |
if($name=="" or $email=="" or $tel==""){ | |
echo "Заполните все поля"; | |
} | |
else{ | |
/*ЕСЛИ ВСЕ ПОЛЯ ЗАПОЛНЕНЫ НАЧИНАЕМ СОБИРАТЬ ДАННЫЕ ДЛЯ ОТПРАВКИ*/ | |
$to = "[email protected]"; /* Адрес, куда отправляем письма*/ | |
$subject = "Письмо с обратной связи"; /*Тема письма*/ | |
$headers = "MIME-Version: 1.0\r\n"; | |
$headers .= "Content-type: text/html; charset=utf-8\r\n"; | |
$headers .= "From: <[email protected]>\r\n";/*ОТ КОГО*/ | |
/*ВО ВНУТРЬ ПЕРЕМЕННОЙ $message ЗАПИСЫВАЕМ ДАННЫЕ ИЗ ПОЛЕЙ */ | |
$message .= "Имя пользователя: ".$name."\n"; | |
$message .= "Почта: ".$email."\n"; | |
$message .= "Телефон: ".$tel."\n"; | |
$message .= "Тип комплекта: ".$type_complect."\n"; | |
/*ДЛЯ ОТЛАДКИ ВЫ МОЖЕТЕ ПРОВЕРИТЬ ПРАВИЛЬНО ЛИ ЗАПИСАЛИCM ДАННЫЕ ИЗ ПОЛЕЙ*/ | |
//print_r($message); | |
$send = mail($to, $subject, $message, $headers); | |
/*ЕСЛИ ПИСЬМО ОТПРАВЛЕНО УСПЕШНО ВЫВОДИМ СООБЩЕНИЕ*/ | |
if ($send == "true") | |
{ | |
echo "<p style='color: green;'>Ваше сообщение отправлено. Мы ответим вам в ближайшее время.\r\n</p>"; | |
} | |
/*ЕСЛИ ПИСЬМО НЕ УДАЛОСЬ ОТПРАВИТЬ ВЫВОДИМ СООБЩЕНИЕ ОБ ОШИБКЕ*/ | |
else | |
{ | |
echo "<p style='color: red;'>Не удалось отправить, попробуйте снова!</p>"; | |
} | |
} | |
?> | |
// END OF PHP |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment