簡體   English   中英

如何在PHP中將多個數組轉換為字符串

[英]how to convert multiple array to string in php

大家好,
我要從數據庫獲取數組格式的所有數據,我需要將該數據傳遞到第二個下拉列表,例如(組選項值),請任何一個幫助我。

這是我的PHP代碼:

     <?php
    //error_reporting(0);
    $servername = "localhost";
    $username = "root";
    $password = "";
    $db = "essae";
    $data = "";
    $subcategory_id = "";
    $subcategory_name = array();
    $conn = mysqli_connect($servername, $username, $password,$db);
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    } 
      $category= $_GET["category_id"];  
            $sql = "SELECT es_category.category_id,es_category_description.name FROM es_category INNER JOIN es_category_description ON es_category.category_id=es_category_description.category_id WHERE parent_id='$category'";    
            $result = $conn->query($sql);

            if ($result->num_rows > 1){

                $sql_getrec ="SELECT es_category.category_id AS sub_cat_id,es_category_description.name AS sub_cat_name FROM es_category INNER JOIN es_category_description ON es_category.category_id=es_category_description.category_id WHERE parent_id='$category'";

                $sub_category= $conn->query($sql_getrec);


                if ($sub_category->num_rows > 1){

                    while ($row=mysqli_fetch_array($sub_category)){

                        $subcategory_id = $row['sub_cat_id'];

                        //$subcategory_name['sub_category_name'][] = $row['sub_cat_name']; 

                        $sql_getrec = "SELECT es_product_description.name AS prod_name FROM es_product_to_category LEFT JOIN es_product_description ON es_product_description.product_id=es_product_to_category.product_id LEFT JOIN es_product ON es_product_description.product_id = es_product.product_id WHERE es_product_to_category.category_id = $subcategory_id  AND es_product.status=1";

                        $sub_product=$conn->query($sql_getrec); 

                        while ($prow=mysqli_fetch_array($sub_product)){

                            $subcategory_name['sub_category_name'][$row['sub_cat_name']]['products_name'][] = $prow['prod_name'];


                        }

                    }


                    echo "<pre>";print_r($subcategory_name);            
                } 
            }   
            else {
            $sql_getrec = "SELECT es_product_description.name FROM es_product_to_category LEFT JOIN es_product_description ON es_product_description.product_id=es_product_to_category.product_id LEFT JOIN es_product ON es_product_description.product_id = es_product.product_id WHERE es_product_to_category.category_id='$category' AND es_product.status=1";

                  $result_getrec=$conn->query($sql_getrec);             
                    while ($row=mysqli_fetch_array($result_getrec)){
                    $data .= $row['name'].",";              
            }
            $data = rtrim($data,",");

            }        

            print_r($data);
        ?>

這是我的HTML代碼:

<php?
 $decocedData1 = json_decode($str_json_format, TRUE);
         //print_r($decocedData1);die;
         $decode = $decocedData1;
 ?>
<div>
  <select name="category" id="category" /> 
       <option selected ="selected">Select category</option>

       <?php foreach($decode as $key => $value) { ?>

              <option value="<?php echo $value['category_id']; ?>"><?php echo $value['name']; ?></option>
              <?php } ?>
     </select>
</div>
<div><select name="category12" id="category12" />     

      </select>
</div>

這是我的j查詢和ajax方法代碼:

<script type="text/javascript">
    $(document).ready(function(){
        $('#category').change(function(){
        var category_id=$('#category').val();
          $.ajax({
          type: "get",
          url: 'data_product.php?category_id='+category_id,
          success: function(data) {
          var products = data.split(",");
          state_html = '';
          state_html = '<option>Please Select product</option>'
          $.each(products, function (index, productName) {
                 state_html += "<option value='"+productName+"'>"+productName+"</option>";
                });
                $('#category12').html(state_html);
            },
        });
    })
});
</script>

您可以在ajax的結果中執行每個jquery

 $.each(products, function(key, value) {   
       $('#category12')
           .append($("<option></option>")
                      .attr("value",value)
                      .text(value)); 
 });

 $(function(){ //sample result, this will be your ajax result.... var products = ["Candy", "Cotton Candy", "Iced Candy"]; //clear again the select element. $('#category12').empty(); $.each(products, function(key, value) { $('#category12') .append($("<option></option>") .attr("value",value) .text(value)); }); }) 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <select id="category12"></select> 

您可以在php中使用類型轉換

PHP中的類型強制轉換與C中的強制轉換一樣工作:所需類型的名稱在要強制轉換的變量之前的括號中寫入。

<?php
$array = array("name", "age", "mobile", "email");
var_dump($array);
(string)$array;
var_dump($array);
?>

這不是您的最終答案,但是您可以嘗試以下代碼並找出變量名

 $('#category12').empty();
             $.each(data, function (index) {
                var optgroup = $('<optgroup>');
                optgroup.attr('label',data[index].name);

                 $.each(data[index].children, function (i) {
                    var option = $("<option></option>");
                    option.val(i);
                    option.text(data[index].children[i]);

                    optgroup.append(option);
                 });
                 $("#category12").append(optgroup);

             });

             $("#category12").multiselect('refresh'); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM