我正在使用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 Condition中传递user_id。我在数据库中有10条记录。但是这个表只生成一行。如同在codeigniter中foreach
那样执行此操作以获取所有10条记录。
答案 0 :(得分:0)
你只回显结果的第一个元素, 所以把你的结果放在一个变量中并循环它
$results = $this->datatables->generate();
foreach ($results as $row)
{
print_r($row);
}
我希望有帮助