zjsjkyjyd 发表于 2010-3-3 23:03:21

困惑了两天了的根据提交内容进行查询

本帖最后由 zjsjkyjyd 于 2010-3-3 23:15 编辑

模型:<?php
class BgglModel extends Model {
    function BgglModel() {
      parent::Model();
    }
    function insert() {
      $data=array(
                'bgbh'=>$this->input->post('bgbh'),
                'jyrq'=>$this->input->post('jyrq'),
                'sbmc'=>$this->input->post('sbmc'),
                'wtdw'=>$this->input->post('wtdw'),
                'gcmc'=>$this->input->post('gcmc'),
                'jbry'=>$this->input->post('jbry'),
                'sfje'=>$this->input->post('sfje'),
                'fpqk'=>$this->input->post('fpqk'),
                'ssdq'=>$this->input->post('ssdq'),
                'khxm'=>$this->input->post('khxm'),
                'lxdh'=>$this->input->post('lxdh'),
                'bz'=>$this->input->post('bz'),
                'crtime'=>time(),
      );
      $this->db->insert('bggl',$data);
    }
    function inquiry() {
      $arr=array(
                'bgbh'=>$this->input->xss_clean($this->input->post('bgbh')),
                'jyrq'=>$this->input->xss_clean($this->input->post('jyrq')),
                'sbmc'=>$this->input->xss_clean($this->input->post('sbmc')),
                'wtdw'=>$this->input->xss_clean($this->input->post('wtdw')),
                'gcmc'=>$this->input->xss_clean($this->input->post('gcmc')),
                'jbry'=>$this->input->xss_clean($this->input->post('jbry')),
                'sfje'=>$this->input->xss_clean($this->input->post('sfje')),
                'fpqk'=>$this->input->xss_clean($this->input->post('fpqk')),
                'ssdq'=>$this->input->xss_clean($this->input->post('ssdq')),
      );
      
            $query=$this->db->get_where('bggl',$arr);
            return $query;
      }
}
    控制器:
<?php
class Bggl extends Controller {
    function bggl() {
      parent::Controller();
       // $this->load->scaffolding('bggl');
      $this->form_validation->set_message('required', '%s不能为空.');
      $this->form_validation->set_message('max_length', '%s不能超过%s个字符.');
      $this->form_validation->set_message('min_length', '%s不能少于%s个字符.');
    }
    function index() {
      $this->load->view('header');
      $this->load->view('bgdj');
    }
    function bgdj() {
      $this->form_validation->set_rules('bgbh','报告编号','trim|required|min_length|max_length|xss_clean');
      $this->form_validation->set_rules('jyrq','检验日期','trim|required|min_length|max_length|xss_clean');
      $this->form_validation->set_rules('sbmc','设备名称','trim|required|min_length|max_length|xss_clean');
      $this->form_validation->set_rules('wtdw','委托单位','trim|required|min_length|max_length|xss_clean');
      $this->form_validation->set_rules('gcmc','工程名称','trim|required|min_length|max_length|xss_clean');
      $this->form_validation->set_rules('jbry','经办人员','trim|required|min_length|max_length|xss_clean');
      $this->form_validation->set_rules('sfje','收费经额','trim|required|max_length|xss_clean');
      $this->form_validation->set_rules('fpqk','费票情况','trim|required|xss_clean');
      $this->form_validation->set_rules('ssdq','所属地区','trim|required|xss_clean');
      $this->form_validation->set_rules('khxm','客户姓名','trim|xss_clean');
      $this->form_validation->set_rules('lxdh','联系电话','trim|xss_clean');
      $this->form_validation->set_rules('bz','备注','trim|xss_clean');
      if ($this->form_validation->run() == FALSE) {
            $this->load->view('header');
            $this->load->view('bgdj');
      }
      else {
            $this->load->model('bgglModel');
            $this->bgglModel->insert();
            $this->load->view('header');
            $this->load->view('bgdj');
      }
    }
    function bgcx() {
      if($this->input->post('bgcxsub')==FALSE) {
            $this->load->view('header');
            $this->load->view('bgcx');
      }
      else {
            $this->load->model('bgglModel');            
            $data['query']=$this->bgglModel->inquiry();
            $this->load->view('header');
            $this->load->view('bgcx',$data);
      }
    }
}
视图:
<div id="main">
    <?php echo form_open('bggl/bgcx');
    $tbdata=array(
            array("报告编号",form_input('bgbh',set_value('bgbh')),form_error('bgbh')),
            array("检验日期",form_input('jyrq',set_value('jyrq')),form_error('jyrq')),
            array("设备名称",form_input('sbmc',set_value('sbmc')),form_error('sbmc')),
            array("委托单位",form_input('wtdw',set_value('wtdw')),form_error('wtdw')),
            array("工程名称",form_input('gcmc',set_value('gcmc')),form_error('gcmc')),
            array("经办人员",form_input('jbry',set_value('jbry')),form_error('jbry')),
            array("收费金额",form_input('sfje',set_value('sfje')),form_error('sfje')),
            array("费票情况",form_input('fpqk',set_value('fpqk')),form_error('fpqk')),
            array("所属地区",form_input('ssdq',set_value('ssdq')),form_error('ssdq')),
            array("",form_submit('bgcxsub','查询'))
    );
    echo $this->table->generate($tbdata);
    ?>
</form>
<table border="1">
    <tr>
      <th>报告编号</th><th>检验日期</th><th>设备名称</th><th>委托单位</th><th>工程名称</th>
    </tr>
    <?php foreach($query->result as $row) : ?>
    <tr>
      <td><?=$row->bgbh?></td>
      <td><?=$row->jyrq?></td>
      <td><?=$row->sbmc?> </td>
      <td><?=$row->wtdw?> </td>
      <td><?$row->gcmc?> </td>
    </tr>
    <?php endforeach; ?>
</table>
</div>
以上为代码,以下为出错信息:





进入查询页面示提交时出现





提交后出现

zjsjkyjyd 发表于 2010-3-3 23:07:40

A PHP Error was encountered
Severity: Warning

Message: Invalid argument supplied for foreach()

Filename: libraries/Loader.php(673) : eval()'d code

Line Number: 31还有这个错误

jeongee 发表于 2010-3-4 17:31:06

LZ不看错误提示的吗???

Hex 发表于 2010-3-4 19:22:30

是呀,不看错误提示就问问题,这样可不好。

zjsjkyjyd 发表于 2010-3-4 21:20:02

看的呀,有些错误出来了我解决掉了呀,再出现这个我不知道这个错误什么意思了

zjsjkyjyd 发表于 2010-3-4 21:21:53

第一个我知道的,就是没有定义

Hex 发表于 2010-3-4 23:30:15

楼主没有 $this->load->database(); 吧?

zjsjkyjyd 发表于 2010-3-5 16:33:36

autoload了

zjsjkyjyd 发表于 2010-3-5 22:57:06

楼主没有 $this->load->database(); 吧?
Hex 发表于 2010-3-4 23:30 http://codeigniter.org.cn/forums/images/common/back.gif

我该加载的都加载的了,autoload的,我把视图改了一下没有foreach输出就没有错误,数组打印显示echo print_r($query),显示了个Array ( ) 1
   $data['query']=$this->bgglModel->inquiry();

Hex 发表于 2010-3-6 00:44:16

视图里应该这样写 $query->result()
楼主你仔细看看,你少了括号,这是方法,不是属性 -_-

参考 http://codeigniter.org.cn/user_guide/database/results.html
页: [1] 2
查看完整版本: 困惑了两天了的根据提交内容进行查询