JQuery не отправляет данные в PHP

0

Я застрял здесь в течение часа, я искал некоторые темы в stackoverflow, но ничего.

У меня есть этот скрипт

<script type="text/javascript">
$('.qty').keyup(function () {
    var $me = $(this),
        $parent = $me.parent('div'),
        total = parseInt($me.attr("data-price"));

    if (isNumber($me.val()) && $me.val() > 0) {
        total = total * $me.val();
    }
    $parent.find('.price').html(total);

    updateTotal();
});

function isNumber (n) {
    return !isNaN(parseFloat(n)) && isFinite(n);
}

function updateTotal () {
    var total = 0;

    $('.qty').each(function () {
        var $me = $(this);

        if (isNumber($me.val()) && $me.val() > 0) {
            total += $me.val() * parseInt($me.attr("data-price"));
        }        
    });

    $('#total').text(total);
    $.ajax({
    type:'POST',
    url:'./s.php',
    data:'price='+total,
    success: function(data){
        alert(data);
    }
    });
}

updateTotal();
    </script>

Я хочу отправить цену на страницу s.php из той же папки, но когда я набираю echo $_POST['price']; Я получаю неопределенную ошибку индекса. var_dump($_POST['price']) возвращает null. Результат со всплывающей страницы хорош, но не передается на эту страницу.

  • 0
    Вы отправляете символ (со всеми заголовками и багажом, который требуется) с каждой нажатой клавишей пользователя? Я думаю, что это немного превышает возможности современных интернет-соединений.
  • 0
    возможно вместо данных: 'цена =' + итого для использования данных: {цена: итого} Я не знаю ...?
Показать ещё 22 комментария
Теги:

1 ответ

0

Я рекомендую вам, когда вы используете POST на сервер, отправляете объект JSON. то, что вы делали, работает для метода GET, URL-адрес будет выглядеть как "s.php? total = 1000".

попробуй это:

var toSend= {
    total: total
};
$.ajax({
    type:'POST',
    url:'./s.php',
    data: toSend,
    success: function(data){
        alert(data);
    }
});
  • 0
    Попробовал сейчас, выдает ту же ошибку.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню