我試圖從我的索引頁上的聯繫表單發送郵件,姓名和電子郵件到我自己的電子郵件,但我有一些麻煩。我正在使用AngularJS。現在,當我單擊表單上的提交時,它只是出現一個加載屏幕,並沒有發生任何事情。這是我目前有:
HTML:
<form ng-submit="save()" class="contactForm" name="form" ng-hide="loaded" ng-controller="formCtrl">
<input class="input" required="required" type="text" name="name" placeholder="Your Name" ng-model="message.name" />
<input class="input email" required="required" type="email" name="email" value="" placeholder="Your Email" ng-model="message.email" /><br />
<textarea class="textarea" rows="5" required="required" placeholder="Your Message" ng-model="message.text" ></textarea>
<button class="btn green">Send Message</button>
</form>
JS:
$scope.save = function() {
$scope.loaded = true;
$scope.process = true;
$http.post('sendemail.php', $scope.message).success(function() {
$scope.success = true;
$scope.process = false;
});
};
PHP(sendemail.php):
$rest_json = file_get_contents("php://input");
$_POST = json_decode($rest_json, true);
$email = $request->message.email;
$name = $request->message.name;
$message = $request->message.text;
$from="From: $name<$email>\r\nReturn-path: $email";
$subject="Message sent using your contact form";
mail("[email protected]", $subject, $message, $from);
我也試過以下php:
var_dump($_POST);die();
$_POST = json_decode($rest_json, true);
$email = $_POST["message.email"]; //$request->message.email;
$name = $_POST["message.name"]; //$request->message.name;
$message = $_POST["message.text"]; //$request->message.text;
$from="From: $name<$email>\r\nReturn-path: $email";
$subject="Message sent using your contact form";
mail("[email protected]", $subject, $message, $from);
該php應該在與JavaScript相同的文件夾?任何幫助將非常感激!非常感謝。
var_dump行給你什麼?另外 - 您可能會意識到這一點,但是之後的'die();'會阻止第二個PHP示例中的其他任何內容運行。 – jackel414
我得到一個404錯誤: –
「POST /sendemail.php」錯誤(404):「Not found」 –