При отправке сообщения, почта принимает только сообщение вида
Откуда:
Отправитель:
Фамилия отправителя:
Адрес отправителя:
Сообщение:
без значений из формы.Не могу понять в чем проблема.
Вот код:
function validate(form){
check = "";
check+=validateFirstname(form.first_name.value);
check+=validateSecondname(form.last_name.value);
if (check == "") {
$.ajax({
type:"POST",
url:'./php_mailer/examples/contact.php',
data:$('#content__form').serialize(),
success: function (data) {
// Вывод текста результата отправки в текущей форме
alert('Ваш запрос отправлен, проверьте почту в течение суток.');
}
})
return false;
}
else {alert(check); return false;}
}
function validateFirstname(field){
return (field.replace(/\s+/g,'')!='')?"":"Не введено имя."
return ''
}
function validateSecondname(field){
return (field.replace(/\s+/g,'')!='')?'':'Не введена фамилия.'
return ''
}
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<script type="text/javascript" src="scripts/validate.js"></script>
</head>
<body>
<form onSubmit="return validate(this)" class="content__form" method="POST">
<input type="text" name="first_name" placeholder="First name" class="form__input" />
<input type="text" name="last_name" placeholder="Last name" class="form__input" />
<input type="text" name="email" placeholder="Email" class="form__input" />
<input type="text" name="url" placeholder="Url" class="form__input" />
<textarea name="message" placeholder="Message" cols="30" rows="10" class="form__text"></textarea>
<input type="submit" value="SUBMIT"/>
</form>
</body>
</html>
И код на PHP:
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (isset($_POST['first_name'])) {$first_name = $_POST['first_name'];}
if (isset($_POST['last_name'])) {$last_name = $_POST['last_name'];}
if (isset($_POST['email'])) {$email = $_POST['email'];}
if (isset($_POST['url'])) {$url = $_POST['url'];}
if (isset($_POST['message'])) {$message = $_POST['message'];}
$to = "sayapov.ainur@mail.ru"; /*Укажите ваш адрес электронной почты*/
$headers = "Content-type: text/plain; charset = utf-8";
$message = "Откуда: $email \n\nОтправитель: $first_name \n\nФамилия отправителя: $last_name \n\nАдрес отправителя:$url \n\nСообщение: $message";
date_default_timezone_set('Etc/UTC');
require '../PHPMailerAutoload.php';
$mail = new PHPMailer();
$mail->CharSet = "UTF-8";
$mail->Encoding = 'base64';
$mail->isSMTP();
$mail->SMTPDebug = 2;
$mail->Debugoutput = 'html';
$mail->Host = "smtp.gmail.com";
$mail->SMTPSecure = 'tls';
$mail->Port = 25;
$mail->SMTPAuth = true;
$mail->Username = "blablae@gmail.com";
$mail->Password = "88888";
/** **/
$mail->setFrom($email, 'From User');
$mail->addReplyTo('reply-to@yoursitename.com', 'Reply-to Name');
$mail->addAddress($to, 'To Ainur');
$mail->Subject = "User notification.";
$mail->msgHTML($message);
if (!$mail->send()) {
echo "Mailer Error: " . $mail->ErrorInfo;
} else {
echo "Message sent!";
}
} else {
http_response_code(403);
echo "Попробуйте еще раз";
}
?>
В js-функции validate()
у вас неверный jquery-селектор для сериализации введеных значений элементов формы. Должно быть, например, так - $('.content__form').serialize()
Оказался еще и не подключен Jquery. Всем спасибо.
<script src = "https://code.jquery.com/jquery-2.1.0.js"></script>
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
Пробую настроить redirect по user_agent заголовкам на разные страницы сайтаНапример пользователя с устройства на ПО ios перенаправляет в раздел с контентом...
Во фреймворке есть debug panel, которая показывает огроомнейшее количество всех запросов, среди которых много служебных, для отладки, на сколько...
Пытаюсь сделать загрузку с помощю ajax из бд , но в ответ ничего не приходит , ошибок нету!