Angularjs POST в PHP печать пустых значений в электронной почте и консоли

Я пытаюсь отправить значения из angularjs на страницу php, затем страница php отправляет значения по электронной почте. Проблема в том, что переменные, отправленные на электронную почту, печатаются пустыми. Когда в моей IDE переменные будут выгружаться в журнал должным образом, но когда одно и то же действие выполняется на сайте в Интернете (пробовали на двух разных сайтах), переменные, предназначенные для печати в электронном письме, не печатаются в журнале. на свалке.

https://github.com/Cameron64/BCIS4610

Код PHP:

    if ( $_SERVER['REQUEST_METHOD'] == 'POST' && strpos($_SERVER['CONTENT_TYPE'], 'application/json') === 0 ) {
$postdata = file_get_contents('php://input');
$_POST = json_decode($postdata, true);
$_REQUEST = array_merge($_REQUEST, $_POST);
}//$data['message'] = $_POST['customer'];
$data = json_decode($_POST['customer']);
//var_dump($data);
$basket = array();
$basketQuantities = array();
$email = $data->email;
$phone = $data->num;
$company = $data->restaurant;
$products = $data->product;
$quantities = $data->quantities;
$comments = $data->comments;
$counter = 0;

//var_dump($_POST['customer']);

for($i=0; $i<= sizeof($products,0)-1; $i++){
array_push($basket, $data->product[$i]->id);
}

for($i=0; $i<= sizeof($products,0)-1; $i++){
if($data->quantities[$i] != null)
{$basketQuantities[$i]=$data->quantities[$i];
}
else{
array_push($basketQuantities[$i], "1");
};
}$final = "";
$final .= "Email: " . $email . "\n".         "Company Name: ". $company . "\n".     "Phone Number: ". $phone . "\n".
"They ordered: \n";
for($i=0; $i <= sizeof($products,0)-1; $i++){

$final .= $basket[$i] . "\t" . $basketQuantities[$i] . "\n";
}
if($comments != null){
$final .= "They also left a comment with their order:" . "\n" . wordwrap($comments);
}$mailTo = "myemail@ymail.com";
$mailSubject = "New Order";

var_dump($final);

if($counter < 1){
mail($mailTo,$mailSubject,$final);
$counter++;
}

Код AngularJS

    this.basket =[];
this.customer ={};
this.customer.email = "";
this.customer.num = "";
this.customer.restaurant = "";
this.customer.product=[];
this.customer.quantities=[];
this.customer.comments= "";this.formSubmit = function(){if(document.getElementById('email').checkValidity() && document.getElementById('tel').checkValidity()
&& document.getElementById('name').checkValidity()){

lol = this;
$http({
method: 'POST',
url: 'php/SendOrder.php',
data: $.param({'customer' : JSON.stringify(lol.customer)}),
headers: {'Content-Type': 'application/x-www-form-urlencoded'}
}).
success(function(response) {
console.log(response);
window.location = "invoice.html";
})
}

};

Значения заполняются через nd-модель для формы. Я не верю, что это представляется в форме, не знаю, изменит ли это что-нибудь.

0

Решение

Задача ещё не решена.

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

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

А ты уже прошел курс программирования? Супер скидка!
Прокачать скилл $$$
×