用户
 找回密码
 入住 CI 中国社区
搜索
查看: 4083|回复: 8
收起左侧

[已解决] 报错了?急急

[复制链接]
发表于 2010-8-21 20:03:25 | 显示全部楼层 |阅读模式
PHP复制代码
 
 /*用于提问时候分类的选择*/
 function get_js(){
  $categoryjs=$category1=$category2=$category3='';
  $query="SELECT * FROM `ask_category` order by displayorder asc ";
  while($category=$this->db->query($query)){
   switch($category['grade']){    //这行报错
    case 1:
     $category1.='["'.$category['id'].'","'.$category['name'].'"],';
     break;
    case 2:
     $category2.='["'.$category['pid'].'","'.$category['id'].'","'.$category['name'].'"],';
     break;
    case 3:
     $category3.='["'.$category['pid'].'","'.$category['id'].'","'.$category['name'].'"],';
     break;
   }
  }
  $category1=substr($category1,0,-1);
  $category2=substr($category2,0,-1);
  $category3=substr($category3,0,-1);
  $categoryjs="{\"category1\":[$category1],\"category2\":[$category2],\"category3\":[$category3]}";
  return $categoryjs;
 }
 
复制代码



报错信息

Fatal error: Cannot use object of type CI_DB_mysql_result as array in C:\xampp\htdocs\input_public\system\application\models\input_model.php on line 17

就在switch那行.....

为什么??ci里不能这么用?谢谢
 楼主| 发表于 2010-8-21 20:16:48 | 显示全部楼层
没人????
发表于 2010-8-21 20:24:42 | 显示全部楼层
Fatal error: Cannot use object of type CI_DB_mysql_result as array in

报错后你不看错误说的是什么吗?
PHP复制代码
 
$category=$this->db->query($query)
 
复制代码

这个返回的是OBJECT不是array,所以你要用->去访问,而不是用数组的[]
 楼主| 发表于 2010-8-21 20:29:08 | 显示全部楼层
写成$category->grade吗?

呵呵,我还是不熟~~
 楼主| 发表于 2010-8-21 20:33:01 | 显示全部楼层
不好意思~~  还是报错?????

A PHP Error was encountered
Severity: Notice

Message: Undefined property: CI_DB_mysql_result:grade

Filename: models/input_model.php

Line Number: 17


是不是我写的有问题,应该怎么写呢?
发表于 2010-8-21 20:42:42 | 显示全部楼层
这个是基础了。。。。。
foreach($category as $row){
echo $row->grade;
}
 楼主| 发表于 2010-8-21 20:49:24 | 显示全部楼层
呵呵~~  搞定了~~  谢谢~~  

ci中不能用while吗?
发表于 2010-8-21 21:54:08 | 显示全部楼层
回复 7# magicone


    和 CI 无关,用什么循环要根据不同数据结构决定,这个是编程基础知识。
 楼主| 发表于 2010-8-22 10:14:14 | 显示全部楼层
O啦~~O啦~~

本版积分规则