AngularJS + PHP контактная форма, POST 405 (не разрешено)

Я получаю сообщение POST 405 (не разрешено) в консоли всякий раз, когда я пытаюсь отправить сообщение через контактную форму.

App.js

$scope.submitData = function() {
$http({
url: 'handle.php',
method: 'POST',
data: {"name": $scope.name,"email": $scope.email,"message": $scope.message},
headers: {'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'}
})
.success(function() {
window.alert("Success");
})
.error(function() {
window.alert("Failure");
})
}

Handle.php

$json = file_get_contents("php://input");
$data = json_decode($json, true);

$to = "myemail@gmail.com";
$name = $data['name'];
$email = $data['email'];
$message = $data['message'];

//to, subject, message, headers, parameters.
mail($to, $name, $email, $message);
?>

contact.html

<form action="" method="post" ng-submit="submitData()" ng-controller="contactController">
<p>name:</p>
<input name="name" type="text" ng-model="name">
<p>email:</p>
<input name="email" type="text" ng-model="email">
<p>message:</p>
<textarea name="message" type="text" cols="40" rows="5" ng-model="message"></textarea>
<p><div id="html_element"></div><p>
<input type="submit" id="submit" value="Submit"/>
</form>

Я использую веб-сервер nginx на Raspberry Pi.

Является ли handle.php правильным?

Я предполагаю, что эта ошибка означает, что что-то не настроено на сервере? Что мне нужно настроить?

Буду признателен за любую помощь.

0

Решение

Я думаю, что вы должны установить плагин для вызова ajax на другие серверы. Попробуйте скачать это и может помочь:
https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi

После установки нажмите на плагин, добавьте и URL:
https://developer.chrome.com/extensions/match_patterns
и попробуйте еще раз.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector