Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Не корректно работает отправка формы через ajax (https://javascript.ru/forum/jquery/65562-ne-korrektno-rabotaet-otpravka-formy-cherez-ajax.html)

lexx58 25.10.2016 22:21

Не корректно работает отправка формы через ajax
 
Приветствую всех!
Столкнулся с такой проблемой.
Не корректно работает отправка формы через ajax (jquery).
А точнее письма приходят, но только следующего содержания:

Тема: Заявка на регистрацию!
Телефон:
Имя:
E-mail:


В письме нет ни каких данных отправителя, а только форма.

Вот сам код.

<?php
/* Здесь проверяется существование переменных */
if (isset($_POST['phone'])) {$phone = $_POST['phone'];}
if (isset($_POST['name'])) {$name = $_POST['name'];}
if (isset($_POST['addres'])) {$addres = $_POST['addres'];}

/* Сюда впишите свою эл. почту */
$address = "test@test.ru";

/* А здесь прописывается текст сообщения, \n - перенос строки */
$mes = "Тема: Заявка на регистрацию!\nТелефон: $phone\nИмя: $name\nE-mail: $addres";

/* А эта функция как раз занимается отправкой письма на указанный вами email */
$sub='Заявка'; //сабж
$email='Заявка на регистрацию <test.ru>'; // от кого
$send = mail ($address,$sub,$mes,"Content-type:text/plain; charset = utf-8\r\nFrom:$email");

ini_set('short_open_tag', 'On');
header('Refresh: 3; URL=index.html');
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="refresh" content="3; url=index.html">
<title>Заполнения анкеты</title>
<meta name="generator">
<style type="text/css">
body
{

background: #22BFF7 url(images/zakaz.jpg) top -70% center no-repeat;

}

<script type="text/javascript">
setTimeout('location.replace("/index.html")', 3000);
/*Изменить текущий адрес страницы через 3 секунды (3000 миллисекунд)*/
</script>
</head>
</body>
</html>

Не могу понять в чем причина.
Вроде настроил форму правильно.

Помогите пожалуйста советом.
Заранее благодарен за ваши ответы.

laimas 26.10.2016 02:11

header('Refresh: 3; URL=index.html');
и
setTimeout('location.replace("/index.html")', 3000);

это чтобы страшнее было?

Идри его мать, ну когда же вы начнете читать матчасть, дабы узанать, что так почтовые отправления оформлять можно, если оно как в руководстве mail ("address", "Message", "Hello, people!","Content-type:text/plain; charset = utf-8\r\nFrom:$email").

Чего вы ожидаете, если даже не проверяете на сервере есть ли значения данных? Что вы ожидаете в ответ, если представлен клиентский код, прочем несуразный вкупе с серверным, в котором вообще нет формы?


Часовой пояс GMT +3, время: 00:54.