插入行数据后,Mysql插入空行(在Chrome中)

时间:2010-12-12 02:29:25

标签: php mysql codeigniter

似乎是一个浏览器问题,因为在Firefox中它工作正常但不是Chrome。

为什么当我提交我的php表单将数据插入mysql db表时,请检查表。我看到我新创建的行中有数据,还有一行没有任何内容?

我的控制器:

    function Admin() {
       parent::Controller();

       $this->dx_auth->check_uri_permissions();

       $this->load->model('alert_model');
       $data['rows'] = $this->alert_model->check($num_results=4);
       $this->load->view('includes/header', $data);
    }

    function index() {
       $this->load->view('admin/notifications');
       $this->load->view('includes/footer');
    }

    function sendalert() {
       $info = array(
           'msg_author'  => $this->input->post('msg_author'),
           'msg_date'    => $this->input->post('msg_date'),
           'msg_subject' => $this->input->post('msg_subject'),
           'msg_content' => $this->input->post('msg_content')
       );

       $this->send_notification->send($info);
       $this->index();
    }

我的模特:

    function send($info) {
       $this->db->insert('msg', $info);
       return;
    }

我的观点:

<?php echo form_open('admin/sendalert'); ?>

    <label for="msg_subject">Subject</label>
    <input type="text" name="msg_subject" id="msg_subject" />

    <label for="msg_date">Date</label>
    <input type="text" name="msg_date" id="msg_date" />

    <label for="msg_author">From</label>
    <input type="text" name="msg_author" id="msg_author" />

    <label for="msg_content">Content</label>
    <input type="text" name="msg_content" id="msg_content" />

    <input type="submit" value="submit" />

<?php echo form_close(); ?>

由于

3 个答案:

答案 0 :(得分:2)

尝试更改

$this->index();

redirect('admin/index', 'refresh'); 

答案 1 :(得分:0)

发布的代码看起来不错,但问题可能出在:

$this->index();

你也可以发布index()控制器函数吗?

答案 2 :(得分:0)

如果没有第二个请求发送到服务器,也检查您的日志,由于某种原因被重写为index.php。最常见的是丢失的图像,一个令人讨厌的图像是对favicon.ico的请求。