我想在用户仪表板上自动显示这些结果,当用户登录到他们的仪表板时,我希望运行此查询并向他们显示其用户 ID 的统计信息。请建议如何做到这一点。如何获得登录用户 ID,统计工作代码发布在下面。
<?php
$query = $this->db->query("SELECT
tblclients.userid as client_id,
tblclients.company as company_name,
IFNULL(tblinvoices.total, 0) AS total_amount,
IFNULL(tblinvoicepaymentrecords.amount, 0) AS paid_amount,
( IFNULL(tblinvoices.total, 0) - IFNULL(tblinvoicepaymentrecords.amount, 0)) AS amount_due
FROM
tblclients
LEFT JOIN tblinvoices ON tblclients.userid = tblinvoices.clientid
LEFT JOIN tblinvoicepaymentrecords ON tblinvoices.id = tblinvoicepaymentrecords.invoiceid
WHERE tblclients.userid = 1");
foreach ($query->result_array() as $row)
{
echo $row['total_amount'] . " " . $row['paid_amount'] . " " .$row['amount_due'];
echo "<br />";
}
?>
检查此代码后:
echo '<pre>'; print_r($this->session->all_userdata());exit;
我正进入(状态:
Array
(
[__ci_last_regenerate] => 1504507372
[client_user_id] => 1
[contact_user_id] => 1
[client_logged_in] => 1
[red_url] => https://www.trisuka.com/crm/admin
)
首先,我建议您使用以下命令检查控制器中的所有会话数据
echo '<pre>'; print_r($this->session->all_userdata());exit;
尝试打印并检查您在会话中存储的用于存储用户 ID 的密钥是什么。
假设您在数组中有可用的键,userId
然后您可以使用以下行获取会话数据
$userId = $this->session->userdata('client_user_id');
但请确保您在名为“client_user_id”的会话中有可用的密钥。
一旦你得到了$userId
会话的形式,你就可以像这样将它连接到查询中。
$query = $this->db->query("SELECT
tblclients.userid as client_id,
tblclients.company as company_name,
IFNULL(tblinvoices.total, 0) AS total_amount,
IFNULL(tblinvoicepaymentrecords.amount, 0) AS paid_amount,
( IFNULL(tblinvoices.total, 0) - IFNULL(tblinvoicepaymentrecords.amount, 0)) AS amount_due
FROM
tblclients
LEFT JOIN tblinvoices ON tblclients.userid = tblinvoices.clientid
LEFT JOIN tblinvoicepaymentrecords ON tblinvoices.id = tblinvoicepaymentrecords.invoiceid
WHERE tblclients.userid = '".$userId."' ");
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句