【发布时间】:2019-07-18 11:01:45
【问题描述】:
我有一个如下表目标
id | subject | achievement | staff_id
1 Target January 1150000 1
2 Target January 1350000 2
3 Target February 20000000 1
4 Target February 23500000 2
5 Target January 1500000 3
我想展示的是在 codeigniter 中使用 sql 查询,如
SELECT * FROM `target` WHERE `staff_id`='$id' ORDER BY 'id' DESC LIMIT 3,1
我已经尝试在 codeigniter 中使用 get where、order by 和 limit 查询,但是屏幕变黑了
这是模型代码
$id=get_staff_user_id();
$this->db->get_where('target', array('staff_id'=>$id,));
$this->db->order_by('id','desc');
$this->db->limit(3, 1);
$query=$this->db->get();
return $query;
这是控制器代码
$data['target'] = $this->target_model->getAllTarget()->result();
这是查看代码
<?php foreach($targets as $target){
if($total >= floatval($target->achievement)) {
$percent = 100;
} else {
if ($total !== 0) {
$percent = number_format(($total * 100) / $target->achievement, 2);
}
}
echo $percent;
?>
我的代码中的错误在哪里?
谢谢
【问题讨论】:
-
去掉$id后面多余的逗号
$this->db->get_where('target', array('staff_id'=>$id));,开启报错功能就可以知道是什么错误了。 -
" 但是屏幕变黑了" 你的意思是 PHP 的白屏死机检查错误日志是否有错误。
-
"去掉多余的逗号 $this->db->get_where('target', array('staff_id'=>$id)); $id" 不会帮助@DevsiOdedra,因为像topicstarter那样使用逗号实际上是valid代码并且不会给出解析错误..
-
你只是建议,知道确切的错误启用错误报告。
-
foreach($target as $target将目标替换为目标,因为您将目标从控制器传递到视图。
标签: php mysql codeigniter