根据多个下拉列表选择获取数据并检索结果PHP / Jquery

时间:2016-10-05 19:19:09

标签: php jquery ajax mysqli

我需要帮助才能完成这项工作。

让我们说在我的网站上你可以建立你的三明治。 为此我有2张桌子。

enter image description here

你将在checkout.php中构建所有内容 enter image description here

我怎样才能让jquery / ajax给我单价并根据我的三明治的数量和大小给出总数? 我知道我必须加入表格,但它如何与ajax一起使用? 我参与了这个工作,我只需要知道如何用ajax显示这一切。

零件工作: 按钮+和 - 将更改$value即数量。 按钮x删除。 我不知道怎么做的零件: 选择将一起工作的选项下拉菜单,并给出总价和单价。 你会怎么做?

这是我用过的一个例子,你可以帮助我。 :)

这是我在其他帖子My complex post

中使用的复杂代码

Obs:我没有重复我的问题!在这里我要问如何使这个客户端,并在我的复杂的帖子中是如何使我的下拉列表使用准备好的代码给我的值。

这就是我所做的...... 这是我的cart.php

    function cart(){
    global $conn;

    $fabric_options = '';
    $query2 = "SELECT almofadas.A_id, almofadas.tecido, almofadas.id_price, valores_almofadas.id_price, valores_almofadas.icms_7, valores_almofadas.icms_12
    FROM almofadas 
    INNER JOIN valores_almofadas
    ON almofadas.id_price=valores_almofadas.id_price";
    $result = mysqli_query($conn,$query2);
    while($rows = mysqli_fetch_assoc($result)){
      $tecido=$rows['tecido'];
      $id_price=$rows['id_price'];
      $price=$rows['icms_7'];
      $fabric_options .= '<option value="'.$id_price.'">'.$tecido.'</option>';

    }

foreach ($_SESSION as $name => $value) {
     if($value > 0){
     if(substr($name, 0, 8 ) == "product_"){
     $length = strlen($name) -8;
     $item_id = substr($name,8 , $length);

     $query = "SELECT * 
               FROM gallery2 
               WHERE gallery2.id =".escape_string($item_id). "";
               $run_item = mysqli_query($conn,$query);
               while($rows = mysqli_fetch_assoc($run_item)){ 
                 $vari   = $rows['variante'];
                 $num    = $rows['title'];
                 $id     = $rows['id'];

  // these are my buttons                  
$btn_add ='<button type="button" class="btn btn-success actions plus" data-action="plus" product_id="'.$id.'"><i class="fa fa-plus fa-lg" aria-hidden="true" add_btn></i></button>';

$btn_remove ='<button type="button" class="btn btn-warning actions less" data-action="remove" product_id="'.$id.'"><i class="fa fa-minus fa-lg" aria-hidden="true" remove_btn></i></button>';

$btn_delete ='<button type="button" class="btn btn-default actions" data-action="delete" product_id="'.$id.'" onclick="deleteRow(this)"><i class="fa fa-times fa-lg" aria-hidden="true"></i></button>';

     if($rows['variante'] < 1){
        $vari="";
        }else{
        $vari = "-".$rows['variante'];
        }

  $product = '
   <tr>
   <td style="width:100px; "><img src="../'.$rows['image'].'" style="width:90%;border: 1px solid black;"></td>
   <td>'.$num.''.$vari.'</td>
   <td style="width:15%;">
     <select id="" class=" fabric select form-control selectpicker" required=""  >
    '. $fabric_options . '  
     </select>
    </td>

    <td>
     <select  id="size" class="select form-control selectpicker" required style="width:80%;" onchange="saveChoice()" >
       <option value="50">50x50</option>
       <option value="40">45x45</option>
     </select>
    </td>

    <td class="product'.$id.'">'.$value.'</td> // this is the amount of items for each row
    <td class="'.$id.'">R$:'.$price.'</td>
    <td>$ ' .$value * $price.'</td>
    <td> 
    '.$btn_add.' '.$btn_remove.' '.$btn_delete.'
    </td>
    </tr>';
           echo $product;  

             } 
          } 
       }
    }   
 }

这是我用来在btn上点击checkout.php进行amout更新的脚本

$('.actions').click(function(e){
  e.preventDefault();
  var action = $(this).attr('data-action'); //gets the button action
  var id = $(this).attr('product_id'); //id of the products
  console.log("triggered action " + action + " for product " + id); //debugging
  $.ajax({
    url: 'cart_functions.php',
    type : 'GET',
    data: {action:action,prod_id:id},
    dataType: 'json',
    success: function(data)
    {
      console.log("ajax call returned the following: " + JSON.stringify(data)); //debugging
      if (data.result == "success") {
        if (action == "plus" || action == "remove")
        {
          console.log("identified product td for " + id + ": " + $(".product" + id).length); //debugging
          $(".product" + id).text(data.val);//update the UI with the new total of each item
         //rest of the script

0 个答案:

没有答案