Я пытаюсь отправить основное электронное письмо с использованием почтовой функции PHP и AJAX. Ошибок нет, но письмо не отправляется. Вот моя функция AJAX:PHP почтовая функция не отправляет электронную почту
<script language="javascript">
function sendMail(email){
var xmlhttp = new XMLHttpRequest();
var url = "/mail.php";
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
alert("entrei");
document.getElementById("email").value = xmlhttp.responseText;
}
}
xmlhttp.open("POST", url+"?email=" + email, true);
xmlhttp.send();
}
</script>
Вот мой PHP код:
<?php
$Name = "Da Duder"; //senders name
$email = "[email protected]"; //senders e-mail adress
$recipient = "[email protected]"; //recipient
$mail_body = "The text for the mail..."; //mail body
$subject = "Subject for reviever"; //subject
$header = "From: ". $Name . " <" . $email . ">\r\n"; //optional headerfields
mail($recipient, $subject, $mail_body, $header); //mail command :)
?>
Кто-нибудь знает, что случилось?
EDIT.:Btw, это мой php.ini почты конфигурации и у меня есть все это настроить в XAMPP:
; XAMPP: Comment out this if you want to work with an SMTP Server like Mercury
SMTP = localhost
smtp_port = 25
; For Win32 only.
; http://php.net/sendmail-from
;sendmail_from = [email protected]
EDIT2.:I изменил мой PHP-код и теперь я получаю следующее ошибка:
Warning: mail(): SMTP server response: 530 5.7.0 Must issue a STARTTLS command first. ev7sm64500334wjb.47 - gsmtp in C:\xampp\htdocs\path\public_html\mailtest.php on line 10
Вы пробовали простой посыл без какой-либо логики и без AJAX, чтобы увидеть, если это будет отослано? т.е.: mail ('[email protected]', 'test', 'basic test'); – RamRaider
Да, используя этот код: Php // Сообщение $ message = "Строка 1 \ nLine 2 \ nLine 3"; // Если любая из наших линий больше 70 символов, мы должны использовать wordwrap() $ message = wordwrap ($ message, 70); // Отправить mail ([email protected] ',' My Subject ', $ message); ?> –
Вы пытаетесь отправить с помощью защищенного сервера. Для отправки электронной почты с помощью Gmail вам потребуется нечто большее, чем просто «mail». – M1ke