Я пытаюсь создать сценарий, который будет отправлять электронное письмо электронной почте нашей компании, когда кто-то нажимает кнопку. Html будет размещен на статической странице и будет делать все на стороне клиента, тогда как php-код будет размещен в другом домене.отправлять данные с помощью ajax, а затем отправлять по электронной почте
То, что я пробовал до сих пор.
HTML
<head><title>Report Errors</title>
<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js' type='text/javascript'></script></head>
<script>$(".c").click(function(){
var href = this.href;
$.ajax({
url: 'http://example.com/m35.php',
type: 'POST',
data: { subject: href },
success: function (data) {
setTimeout(function(){
$(".container").html(data)
}, 1000)
}
});
})
</script>
<a href="http://link-to-be-sent.example.com" class="c">send</a>
<div class="container">success</div>
И код в m35.php файле -
<?php
$mailTo = "[email protected]";
$mailFrom = "[email protected]";
$subject = $_POST["subject"];
$message = "someone reported the content in subject doubtful.";
mail($mailTo, $subject, $message, "From: ".$mailFrom);
?>
EDIT: На основе комментариев, которые я хочу уточнить, что она даже не работает на одном домене и каталог , Однако этот тип кода также работает, но как это сделать без перезагрузки страницы с помощью javascript/jquery.
<form method="post" action="http://example.com/m35.php">
<input type="text" name="subject" id="subject" value=""> <input type="submit">
</form>
Это вопрос CORS, где вы не можете отправить данные на другой домен с помощью AJAX. – Scimonster
Возможно, это может помочь? https://stackoverflow.com/questions/17318426/cors-cross-domain-ajax-without-jsonp-by-allowing-origin-on-server – parchment
Спасибо за предложение @Scimonster, но это даже не работает в том же домене – Avadhesh18