javascript — данные jQuery.post () возвращают весь PHP-скрипт в виде строки?

Я уже настроил простой интернет-магазин SimpleCart.js и пытаюсь реализовать Решение realseanp для добавления функции промо / скидочного кода.

Он использует следующий JavaScript, чтобы разместить введенный пользователем промо-код на discount.php:

jQuery("#promoSub").click(function Discount() {
//Interact with PHP file and check for valid Promo Code
jQuery.post("discount.php", { code: jQuery('#code').val() } , function(data) {
console.log(jQuery('#code').val());
if (data=="0" || data=='') {
console.log("Wrong Code");
}
else {
//create our cookie function if promo code is valid
//create cookie for 1 day
createCookie("promo","true",1);
var y = (data/100);
for(var i=0; i<simpleCart.items().length; i++){
var itemPrice = simpleCart.items()[i].price();
var theDiscount = itemPrice * y;
var newPrice = itemPrice - theDiscount;
simpleCart.items()[i].set("price", newPrice)
}
simpleCart.update();
//hides the promo box so people cannot add the same promo over and over
jQuery('#promoCodeDiv').hide();

}
});
});

…который возвращает 0 или процент скидки, если был передан правильный код:

<?php
$x = 0;
if ($_POST["code"]=="HOLIDAY") { $x = 5; };
echo $x;
?>

Однако, когда я console.log (data) изнутри функции успеха, данные выглядят как весь PHP-скрипт в виде строки вместо эха.

Почему это так, и какие изменения мне нужно сделать, чтобы исправить это? Я очень плохо знаком с PHP и не могу понять, почему jQuery.post () не получает эхо.

1

Решение

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

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

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

По вопросам рекламы [email protected]