Как обновить корзину с помощью Ajax?

Мне действительно нужна помощь от мастера AJAX Guru, чтобы помочь мне создать свою функцию корзины обновлений на моем веб-сайте в AJAX.

Поэтому в основном, что я хотел бы сделать, когда я изменяю один из своих продуктов в одном input_dropdown, моя функция «update_cart» автоматически называется и мои цены обновляются, а также мой ввод

EDIT: Я переписываю свой вопрос, так как я добился определенного прогресса благодаря Matei

Вот мое мнение:

<?php $options = array( '0' => '0', '1' => '1', '2' => '2', '3' => '3', '4' => '4', '5' => '5', '6' => '6', '7' => '7', ); if($product['quantity']==0){ $value[$product['title']] = set_value('quantity'.$product['title']); }else{ $value[$product['title']] = $product['quantity']; } $data0 = 'class="quantSelect" value="'.$value[$product['title']].'" id="quant'.$product['title'].'"'; echo form_dropdown('quantity'.$product['title'], $options, $value[$product['title']],$data0); ?&gt; </td> <td> &lt;?php echo $product['price'] ?&gt; </td> <td id="&lt;?php echo 'price'.$product['title']?&gt;"> $&lt;?php echo $total[$product['title']] ?&gt; </td>[/code] 

Ну, все в петле foreach, но я думаю, что здесь это не имеет значения.

Затем я попытался настроить функцию Matei AJAX:

 $(".quantSelect").click(function(){ $.POST("&lt;?php echo base_url().'main/update_cart';?&gt;", {product_id:$('&lt;?php echo $product['quantity']; ?&gt;').val(),quantity:$('&lt;?php echo 'quantity'.$product['title'] ?&gt;').val()}, function(data){ if(data.success) { $("&lt;?php echo 'price'.$product['title']?&gt;").val(data.some_returned_value); // update value of an text input or textarea (view more info about jQuery selectors) $("#totalPriceWithTaxes").html(data.some_other_returned_value); // update value of a paragraph } }, 'json'); }); 

И наконец, функция корзины обновления:

 function update_cart(){ $success = false; if(!empty($_POST['product_id']) && !empty($_POST['quantity']) && is_numeric($_POST['quantity'])) { // I get all the information i need here in order to calcul the final price //We calcul the final price with taxes, shipping and everything. $data['totalPriceWithTaxes'] = $data['tax'] + $data['totalPrice'] + $data['Shipping']->shipping; $this->session->set_userdata('totalPriceWithTaxes', $data ['totalPriceWithTaxes']); $success = true; $some_returned_value = 69; $some_other_returned_value = $data['totalPriceWithTaxes']; // the final price } echo json_encode(array("success" => $success, "some_returned_value" => $some_returned_value, "some_other_returned_value" => $some_other_returned_value)); } 

Здесь мы, поэтому я не вижу никакого обновления. Если кто-то может помочь мне разобраться, как настроить эту функцию AJAX, я бы очень признателен 🙂

Я рекомендую вам взглянуть на jQuery.post () метод библиотеки jQuery.

Давайте посмотрим следующий пример:

Код Javascript:

 $("#submit-button").click(function(){ $.POST("/PATH_TO/update_cart.php", {product_id:$('#product-id').val(),quantity:$('#quntity').val()}, function(data){ if(data.success) { $("#form-field-id").val(data.some_returned_value); // update value of an text input or textarea (view more info about jQuery selectors) $("p#form-p-id").html(data.some_other_returned_value); // update value of a paragraph } }, 'json'); }); 

Для получения дополнительной информации о jQuery Selectors, пожалуйста, проверьте это

PHP-код:

 <?php $success = false; if(loged()) { // verify if the user is loged (if it's needed) if(!empty($_POST['product_id']) && is_numeric($_POST['product_id']) && !empty($_POST['quantity']) && is_numeric($_POST['quantity'])) { // use here your additional code // update database // if every condition is applied then confirm that the fields are updated $success = true; $some_returned_value = "data has been successfully updated"; $some_other_returned_value = 45.3; // the final price } } echo json_encode(array("success" => $success, "some_returned_value" => $some_returned_value, "some_other_returned_value" => $some_other_returned_value)); ?> 

Это простой пример того, как вы можете использовать метод JQuery POST и PHP для обновления данных, которые вы хотите. Я не использовал ни один из ваших кодов, но вы можете попытаться обновить свою корзину, как это. jQuery – мощная библиотека, поэтому я рекомендую вам взглянуть на нее.