【发布时间】:2015-05-22 22:53:46
【问题描述】:
所以我遇到了这个问题,无法从表中获取字符串。这是我在控制器中的方法:
public function get_tree($id){
$data['tree'] = $this->Product_model->get_tree($id);
return $data;
}
这是模型中的函数:
function get_tree($id){
$this->db->select('ascending_path');
$this->db->from('category');
$this->db->where('id', $id);
$result = $this->db->get();
return $result;
}
我正在使用 Ajax 将其显示到视图中,但似乎没有显示任何内容。甚至没有错误,200 状态代码,并且请求显示在访问日志中。有什么提示吗?
PS:如果我尝试对其进行 json_encode 编码,然后在 ajax 调用中传递 dataType:json ,则返回的结果是:
{"tree":{"conn_id":{"affected_rows":null,"client_info":null,"client_version":null,"connect_errno":null,"connect_error":null,"errno":null, "error":null,"error_list":null,"field_count":null,"host_info":null,"info":null,"insert_id":null,"server_info":null,"server_version":null,"stat ":null,"sqlstate":null,"protocol_version":null,"thread_id":null,"warning_count":null},"result_id":{"current_field":null,"field_count":null,"lengths": null,"num_rows":null,"type":null},"result_array":[],"result_object":[],"custom_result_object":[],"current_row":0,"num_rows":null,"row_data ":null}}
一切似乎都是空的。我什至不知道那个对象是什么,我的意思是,查询应该只带一个字符串。
【问题讨论】:
-
检查this answer。似乎可以帮助你。
-
您需要将类型作为 JSONP 传递给您的 AJAX,这需要来自控制器的 json_encode($data)。其他任何东西都是你从模型中得到的,所以你应该在 if else 循环中检查它,就像我刚刚向你展示的链接一样。该问题中的问题可能会导致您回答。顺便说一句,你有没有解决问题?
-
不,还没有。我也尝试在 mysql 中手动查询它,从 id=(somerealid); 的类别中选择升序路径;这带来了我需要的数据,所以我知道查询也是正确的。
-
那个对象就是你从模型中得到的。所以你会检查你的模型方法。
-
这是实际的模型方法。当我知道不是我在终端中手动执行查询时,该对象说受影响的行为 0。
标签: php mysql codeigniter