Как передать переменную JavaScript в РНР без ошибок?

<head>
<script type='text/javascript' src='jquery.js'></script>
<script type="text/javascript">
$(document).ready(function()
{$("#form").submit(function(event){
  event.preventDefault();
  var mes = $("#message").val();
  $.post("mail.php",$(mes).serialize(),function(result){
  $("#aj").text(mes);
});
return false;
});
});
</script>
</head>
<body>
<form id="form">Сообщение: <input type="text" id="message"><button type="submit">Отправить</button><div id="aj">Ajax</div></form>
</body>
</html>


Фаил mail.php:

<?php
$message = $_POST['mes'];
if (!mail("мой_имэил","Тема","Сообщение: ".$message)) {return "Что ещё за?";}
else {return "Сообщение отправлено";}
?>


Результат: переменная mes выводит введённый в форму текст в знак того, что она успешно создана;
на электронную почту отправляется сообщение "Сообщение: " без переменной $message;
попытка изменить строку вывода текста на $("#aj").text(result); приводит к выводу пустой строки, а не такого result-а, как return, заданный в PHP.

Кто объяснит, где ошибка?
  • Вопрос задан
  • 2700 просмотров
Пригласить эксперта
Ответы на вопрос 3
mlnkv
@mlnkv
JavaScript Developer
$(function() {
  $("#form").on("submit", function(event) {
    event.preventDefault();    
    var message = $("#message").val();

    $.post("mail.php", {message: message}, function(response) {
      $("#aj").text(response);
    });

    return false;
  });
});


<?php

$message = $_POST['message'];

if (mail("мой_имэил", "Тема", "Сообщение: " . $message)) {
  return "Сообщение отправлено";
} else {  
  return "Что ещё за?";
}

?>
Ответ написан
fsdsdfsfdsfsdfsdfsdfsdfsd
@fsdsdfsfdsfsdfsdfsdfsdfsd
Unknown
$(document).ready(function() {
 $("#form").submit(function(event) {
  event.preventDefault();
  var mes = $("#message").val();
  $.post("mail.php", {mes: mes}, function(result) {
   $("#aj").text(mes);
  });
  return false;
 });
});
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы