簡體   English   中英

在Javascript警報框中的新行上顯示PHP數組的每個條目

[英]Displaying each entry of PHP array on a new line in Javascript alert box

我有一個簡單的查詢,可以從數據庫中選擇一些信息:

  $dep_qry = "select product_name, sum(theoretical_stock_level) as opening_stock, sum(quantity_scanned) as closing_stock, department_description, stock_item_code, custom_1 AS size, IFNULL(unit_cost_price, 0.00) AS cost_price from stocktake_products where stocktake_id = '{$stocktake_id}' AND is_deli = 0 
                         group by product_name, department_description
                         order by department_description ASC;";

    $dep_res = db::c()->query($dep_qry);

然后,我有以下代碼將成本價為0.00的產品放入數組中。 然后,我檢查數組中元素的數量。 如果數組中包含一些信息,我想向用戶顯示一個警報,告訴用戶哪些商品的成本價為0。以下代碼有效,但是我想知道是否有可能在數組上顯示每個條目。警報框中的單獨一行? 只是為了使其更加用戶友好。

while ($row1 = $dep_res->fetch(PDO::FETCH_ASSOC))
    {
        $cost_price = number_format($row1['cost_price'],2);
        $pname = $row1['product_name'];
        if ($cost_price == 0.00)
        {
            $products[$i] = $pname;
        }
        $i++;
    }

    $numOfNoCosts = count($products);
    if ($numOfNoCosts > 0)
    {
        echo "<script> alert('".json_encode($products)."') </script>";
    }

如果有更好的方法,我很樂意接受建議!

嘗試這樣在每一行顯示類似數組的值

alert(arrayname.join("\n"));

嘗試將其顯示為數組:

alert(JSON.stringify(your_array));

首先准備一個帶有php數組值的js變量。 像這樣

<script type="text/javascript">
    var obj = <?php echo json_encode($Your_array); ?>;
</script>

下面是一個完整的經過測試的示例

<?php $phpArray = array(
          0 => "Mon", 
          1 => "Tue",  
          2 => "Wed", 
          3 => "Thu",
          4 => "Fri", 
          5 => "Sat",
          6 => "Sun",

    )
?>


<script type="text/javascript">

    var jArray= <?php echo json_encode($phpArray ); ?>;

   alert(jArray.join("\n"));

 </script>

暫無
暫無

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

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