Передать переменную строку из JavaScript в php, используя ajax - PullRequest
0 голосов
/ 10 октября 2018

Как передать значение переменной из html-страницы с помощью javascript в php?

Я создал этот код в моем index.php

$amount = $_GET['pricenumb'];
echo $amount;

, и это мой код JavaScript для вызованажмите кнопку и отправьте данные в файл PHP.

<script type="text/javascript">
$(".cell").on("click", "input:checkbox", function () {
    var thiss = $(this);
    var total = $("#price");
    var target = $("label[for='" + thiss.attr("id") + "']");

    var item_value = +(target.html().replace(/[^0-9\.]/g, "") || 0);
    var cur_total = +(total.html().replace("$", "") || 0);

    if (thiss.prop("checked") === true) {
        cur_total += item_value;
    } else {
        cur_total -= item_value;
    };

    total.text("$" + cur_total);

});
</script>   
<script type="text/javascript"> 
$("#pay_btn").on("click", function () {     
    var price = $("#price").text();
    var pricenumb = price.replace(/[^0-9\.]/g, "");
    $.ajax({
        type: "POST",
        url: "forumdisplay.php?fid=2",
        data: "price=" + price + "pricenumb="+ pricenumb,
        cache:false,
        success: function(){
        }
    });
});
    </script>

, и это флажок,

<div class="cell">
<div class="form-check"><label for="check-a" class="form-check-label"><input id="check-a" class="form-check-input" type="checkbox">$166<span class="form-check-sign"></span></label>
<div class="mask visible-on-sidebar-regular">Buy Product</div>
</div>
</div>

рабочий код, когда я проверяю флажок, он будет обновлятьсясодержимое div, и я хочу, чтобы когда я нажимал кнопку оплаты, получал значение div через javascript и отправлял значение в мой index.php

Ответы [ 2 ]

0 голосов
/ 10 октября 2018

Это не так, как вы передаете данные в AJAX.Правильный формат - использовать фигурные скобки и определить имя реквизита, а затем значение

data:{propName1: value1,propsName2: value2,propsName3: "Some string value"}

, которое можно использовать в таком файле в случае запроса POST.

  • $_POST['propName1'], который в результате выдаст переменные данные value1

  • $_POST['propName3'], который выдаст в виде Some string value строка

Значение может быть в кавычках, если это строка, или не в кавычках, если это переменная.Поэтому вам необходимо переопределить ваши реквизиты данных ajax в

$.ajax({
        type: "POST",
        url: "forumdisplay.php?fid=2",
        data: {price: price ,pricenumb: pricenumb},
        cache:false,
        success: function(response){
            // Things to do on success
        },
        error: function(error){
            // Error handling in case of error
        }
});

Эти значения, которые вы передали, могут быть использованы в файле forumdisplay.php с $_POST['price'] и $_POST['pricenumb'].Имя внутри $ _ POST - это propsName внутри данных реквизитов в функции ajax.

0 голосов
/ 10 октября 2018

Вы используете POST в своем ajax и GET в php, измените ваш ajax на GET.Кроме того, в вашем AJAX изменить

type: "POST",
url: "forumdisplay.php?fid=2",
data: "price=" + price + "pricenumb="+ pricenumb,

на

type: "GET",
url: "forumdisplay.php",
data: {
     price: price,
     pricenumb: pricenumb,
     fid: 2
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...