我使用 codeigniter 生成 ajax 数据表,并将条件作为用户 ID 传递,以从产品订单表中获取记录。
$this->datatables->select('orders.order_user_id,orders.order_date,orders.order_id,orders.order_confirmation_status,orders.order_payment_status,orders.order_shipping_status,orders.order_delivery_status,orders.order_packing_status')
->join('order_products','order_products.order_id=orders.order_id')
->select('round(sum(order_products.pr_quantity*order_products.pr_price))')
->where('orders.order_user_id',$this->uri->segment(3))
->unset_column('orders.order_confirmation_status')
->unset_column('orders.order_payment_status')
->unset_column('orders.order_shipping_status')
->unset_column('orders.order_delivery_status')
->unset_column('orders.order_packing_status')
->add_column('status', '$1','purchase_details_status(orders.order_confirmation_status,orders.order_packing_status,orders.order_shipping_status,orders.order_delivery_status)')
->add_column('action', '$1','purchase_details_action(orders.order_confirmation_status,orders.order_packing_status,orders.order_shipping_status,orders.order_delivery_status,orders.order_id)')
->from('orders');
echo $this->datatables->generate();
}
这里我在Where条件中传递user_id。我在数据库中有 10 条记录。但表只生成一行。如何像 codeigniter 中的 foreach
那样执行此操作以获取所有 10 条记录。
最佳答案
您仅回显结果的第一个元素, 所以将你的结果放入一个变量中并循环它
$results = $this->datatables->generate();
foreach ($results as $row)
{
print_r($row);
}
希望有帮助
关于php - Ajax数据表Codeigniter查询仅返回一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30891174/