如何从数据库中选择多行具有相同id值的值并显示在ajax中?

时间:2016-11-11 05:54:34

标签: php ajax

我已经编写了按钮代码,使用ajax将值发送到php文件,如下所示:

<script>
$(document).ready(function(){
    $(".open-AddBookDialog").click(function(){
        var packageid = $(this).attr("data-id");
        var dataString =  'packageid='+ packageid;
        $.ajax({
            type: "POST",
            url:  "data1.php",
            data: dataString,
            cache: false,
            success: function(result1){
                var packagetype = package_type;
                alert(packagetype);                 
            }
        });
    });
});
</script>

这是我写的按钮的ajax代码。我的按钮代码是:

   <a data-toggle="modal" id="custId" data-name="<?php echo $arr["package_name"]; ?>" data-id="<?php echo $arr["id"]; ?>" href="#myModal" class="open-AddBookDialog btn btn-submit" OnClick='change(this);'>Book / Enquiry / Pay</a>

在href中单击此按钮时,我想使用ajax将id值发送到php文件。

data1.php

<?php
include('database.php');
$id=$_POST['packageid'];
$query1 = mysqli_query($con,"select * from ayurveda_packagetypes where package_id = '$id'");
$arr = mysqli_fetch_array($query1);
echo $arr['package_type'];
echo $arr['package_price'];
mysqli_close($con); 
?>

使用id值,我想从具有相同id值的数据库中选择多行包类型和包价。在选择这些值的多行后,我想将其发送到主php文件并显示所有从数据库中挑选的所有行的值。

有人可以建议怎么做吗?

2 个答案:

答案 0 :(得分:1)

    <script>


          $(document).ready(function()
            {
                $(".open-AddBookDialog").click(function()
                    {
                        var packageid = $(this).attr("data-id");
                        var dataString =  'packageid='+ packageid;
                        $.ajax(
                            {
                                type: "POST",
                                url:  "data1.php",
                                data: dataString,
                                cache: false,
                                success: function(result)
                                {
                                    resultJson=jQuery.parseJSON(result);
                                    $.each(resultJson.packageDetails, function(i, item) {
                                        var packagetype = item.package_type;
                                        var package_price = item.package_price;
                                        alert("packagetype :- "+packagetype+"    ----- package_price :-"+package_price);
                                    }); 
                                }
                            });
                    });
            });


 </script>
 <?php

          include('database.php'); 
          $id=$_POST['packageid']; 
          $query1 = mysqli_query($con,"select * from ayurveda_packagetypes where package_id = '$id'"); 
          //$arr  = mysqli_fetch_array($query1); 
          while( $strPackageResult=mysqli_fetch_array($query1,MYSQLI_ASSOC) )
        {  $ArrPackage[]=$strPackageResult;  }
        if( isset($strPackageResult) ){  unset($strPackageResult);  }
        mysqli_free_result($query1);
        if( isset($query1) ){  unset($query1);  }
            $myResultPackageArray=array();
            if( isset($ArrPackage) && is_array($ArrPackage) && count($ArrPackage)>0 ) {
                $tempArray=array();
            foreach( $ArrPackage as $tempPackage )
            { 
                $tempArray['package_type']=$tempPackage['$tempPackage'];
                $tempArray['package_price']=$tempPackage['package_price'];
                $myResultPackageArray['packageDetails'][] =$tempArray;
            }  
        } 
         mysqli_close($con); 
         echo json_encode($myResultPackageArray);


   ?>

答案 1 :(得分:0)

首先你应该知道一些基本的事情,然后你可以轻松纠正你的错误。

这不是你要求的,但作为一名程序员,我建议你去完成它。

通过你的代码

var packagetype = package_type;

package_type未定义。如果您使用chrome检查元素并检查控制台,您将看到错误。

希望这会奏效。