【发布时间】:2021-11-01 19:07:18
【问题描述】:
我在codeigniter中有一个简单的搜索框,控制器如下:
function searchtrack() {
$this->load->model('excel_import_model');
if(isset($_POST['submittrack'])) {
$awb=$this->input->post('awb');
$data['slt']= $this->excel_import_model->searchtrack($awb);
$this->load->view("searchtrack",$data);
}
}
}
模型如下:
public function searchtrack($awbno) {
$this->db->select('*');
$this->db->where("awb", $awbno);
$this->db->from('consignments');
$query = $this->db->get();
$result = $query->result();
return $result;
}
最后是显示视图:
<?php
foreach($slt as $val){ echo $val->id; }
?>
但是这没有给我任何值,帖子输入被传递给控制器和数据库列,一切都很好,谁能告诉我这里有什么问题提前谢谢
【问题讨论】:
-
很高兴看到新用户开始学习社区指南。你的问题表述得很完美。查看您的代码,它确实应该返回正确的数据。但是,请尝试再次检查所有变量名称。此外,您将数据推送到名为 $data 的变量中,该变量是一个数组,但尚未声明。尝试在您的视图中使用 var_dump($slt) 并查看返回的内容。之后,尝试 log_message('error', $result->countAllResults()) 在你的模型中查看查询是否返回任何结果。
-
我的错,我现在看到您正在使用 $this->db 查询样式。在这种情况下,请尝试使用 log_message('error', $this->db->count_all_results() ) 来获取更多信息。
标签: php mysql codeigniter model controller