2014-01-03 3 views
-3

Я пытаюсь отправить электронную почту с помощью AJAX на кнопку печати:AJAX отправка почты

PHP:

<?php 
if($_POST){ 
    $message = $_POST['msg']; 

    mail("[email protected]", "subj!", $message); 
} 
?> 

JS:

(function($) { 
    $('.cart__item__send-order').click(function() { 
     var data = '&msg=' + 'random text'; 
     $.ajax({ 
      type: "POST", 
      url: "order_mail.php", 
      data: data, 
      success: function(){ 
       console.log('email sent!'); 
      } 
     }); 
    }); 
}); 
}(jQuery)); 

, но ничего не происходит! Не могли бы вы помочь мне выяснить причину, по которой она не работает? btw, it consoles.log 'email отправлен!'

+0

Смотри на вкладке браузера «чистой», что ответил файл PHP. Возможно, была ошибка при вызове 'mail()'. –

+0

Что говорит журнал вашего почтового сервера? – Nate

+0

Также стоит проверить папку спама в gmail, она часто будет отмечена как спам. – webnoob

ответ

0

Возможно, что-то не так с PHP-страницей, но вы неправильно создаете строку данных.

var data = '&msg=' + 'random text'; 

должен быть

var data = 'msg=' + 'random text'; 

или

var data = { msg : 'random text' }; 
+0

Спасибо, я сделал изменение, но все равно не могу отправить почту. Я получил «Код состояния: 200 OK» на вкладке «Сеть» браузера – Petref92

+0

Чем выше у вас проблема с PHP. Я не могу с этим поделать. – epascarello

0

, если вы работаете в собственной машине, вы должны быть активированы какое-либо приложение, которое позволит вам подключиться к серверу SMTP, или вы должны установить собственный SMTP-сервер. Если вы не знаете, как это сделать, я рекомендую вам, что использование PHPMailer это класс PHP, который позволит вам подключить, например, к Google SMTP и отправлять оттуда почту

http://phpmailer.worxware.com/

комментарий, в функции успеха пытаются

success: function(response){ 
console.log(response); 
} 

с этим вы подтверждаете ответ вашего кода PHP

Смежные вопросы