簡體   English   中英

Codeigniter - 循環通過帖子信息傳遞值到模型查詢和輸出結果

[英]Codeigniter - loop through post information passing value to model query and outputting result

我將表單數據傳遞給新的控制器/視圖。

我想遍歷$ _POST數組,將值傳遞給控制器​​/模型,查詢數據庫並將結果返回到要顯示的視圖。

所以我在我的視圖中有以下代碼:

foreach($_POST as $key => $value) //$key is productcode eg '4560'
    {
       $this->sales_model->get_productdetails($this->input->post('$key'))
       echo "Price: ".$price."<br>";
       echo "Pieces: ".$pieces."<br>";
       echo "Cubic Meters: ".$cubicmeters."<hr>";

    }

這是我的模特:

function get_productdetails($productcode)
{
    $this->db->select('price,pieces,cubicmeters');
    $this->db->from('ProductList');
    $this->db->where('productcode',$productcode);
    $q = $this->db->get();
    if($q->num_rows() > 0) 
    {
        return $q->row_array(); 
    }
}

控制器:function new_auto_spread_details(){$ this-> load-> view('sales / new_autospread_order_lines'); }

這不能正常工作。 如何在視圖上輸出/顯示查詢結果? 這可以做到,如果沒有,這是如何通過最佳實踐實現的?

一如既往地謝謝,

您應該使用CodeIgniter的輸入類來獲取所有發布值。

$formValues = $this->input->post(NULL, TRUE);

然后在您的控制器中設置一個中間值來保存您的數據。

$products = array();

foreach($formValues as $key => $value) 
{
    $products[] = $this->sales_model->get_productdetails($key)
}

$data = array();
$data["products"] = $products;

將中介傳遞給視圖。

$this->load->view('sales/new_autospread_order_lines', $data);

在您的評論中,將$ data數組中的每個散列項作為變量引用。

<?php foreach($products as $product) { ?>
<p>
    <?php echo $product["price"]; ?>
</p>
<?php } ?>

$this->input->post('$key')應為$this->input->post($key)

$this->開頭的任何內容都應該由控制器調用,而不是視圖。

你的控制器應該是這樣的:

function new_auto_spread_details()
{
    $products = array();
    foreach($_POST as $key => $value) //$key is productcode eg '4560'
    {
        /* your model method is returning an array,
           so you need to assign it to a variable */
        $products[] = $this->sales_model->get_productdetails($key)
    }

    $this->load->view('sales/new_autospread_order_lines', array(
        'products' => $products
    ));
}

然后在視圖中:

<?php foreach($products as $product): ?>
    Price: <?php echo $product['price'] ?><br>
    Pieces: <?php echo $product['pieces'] ?><br>
    Cubic Meters: <?php echo $product['cubicmeters'] ?><br>
<?php endforeach; ?>

暫無
暫無

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

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