我需要帮助来纠正 codeigniter 中的 php 函数。 我有一个数据库;我想要添加“from_user_id”的所有值。
我使用这个sql来获得想要的结果。
SELECT SUM(kiff_envoi+kiff_recu+visite_recu+profile_visite+da_recu+da_envoi+topic_poster+repon_topic+conv_envoi+conv_recu) AS total_stats FROM score WHERE from_user_id = ?
在 codeingniter 中我使用这个函数。 它允许我检查“from_user_id”是否存在,如果存在,我们计算不同表的总数,并更新“total_stats”中的结果。如果“ from_user_id ”不存在,则创建它。 但我的函数没有返回正确的结果。
我犯了一个大错误,但我不知道在哪里! 有人可以帮助我吗?
public function count_tout_stats($user_id) //total des stats
{
$this->db->select_sum(conv_recu, conv_envoi, repon_topic, etc...);
$query = $this->db->from('score');
$this->db->where('from_user_id', $user_id);
$total_stats = $this->db->count_all_results();
if ($this->ttl_stats_score($user_id) > 0) // Check if exists
{
$data = array(
'total_stats' => $total_stats
);
$this->db->where('from_user_id', $user_id);
$this->db->update('score', $data);
}
else
{
$data = array(
'from_user_id' => $user_id,
'total_stats' => $total_stats
);
$this->db->insert('score', $data);
}
return $total_stats;
}
public function ttl_stats_score($user_id)
{
$this->db->where('from_user_id', $user_id);
$this->db->from('score');
return $this->db->count_all_results();
}
提前感谢您的协助
紫罗兰
你可以试试这个:
$this->db->select('(kiff_envoi+kiff_recu+visite_recu+profile_visite+da_recu+da_envoi+topic_poster+repon_topic+conv_envoi+conv_recu) as total_stats');
$this->db->from('score');
$this->db->where('from_user_id', $user_id);
$result = $this->db->get()->row_array();
print_r($result);
你将会得到你的结果