【问题标题】:Codeigniter Inserting data into databaseCodeigniter 将数据插入数据库
【发布时间】:2014-05-04 11:21:30
【问题描述】:

无法将数据插入 mysql 数据库。我混淆了错误的代码在哪里。我是 Codeigniter 的新手,不知道如何解决这个问题。

在下面查看 tambah_berita.php

<form name="form" action="<?php echo base_url();?>index.php/admin/berita/tambah_berita" method="post">

                    <div class="two fields">
                        <div class="field">
                            <label>ID_Berita</label>
                            <div class="ui small left icon input">
                                <input type="text" placeholder="ID" name="id_berita">
                                <i class="text file outline icon"></i>
                            </div>
                        </div>
                    </div>

                    <div class="fours fields">
                        <div class="field">
                            <div class="ui vertical segment">
                                <div class="date field">
                                    <label>Tanggal</label>
                                    <div class="ui small icon input left">
                                        <input type="text" placeholder="xx/xx/xxxx" name="tanggal">
                                        <i class="calendar icon"></i>
                                      </div>
                                </div>
                            </div>
                        </div>
                    </div>

                    <div class="two fields">
                        <div class="field">
                            <label>Judul</label>
                            <div class="ui small left icon input">
                                <input type="text" placeholder="Nama Profil" name="judul_berita">
                                <i class="text file outline icon"></i>
                            </div>
                        </div>
                    </div>

                    <div class="field">
                        <label>Isi Berita</label>
                        <textarea placeholder="Text" name="content"></textarea>
                    </div>

                <input class="ui small blue submit button" name="submit" type="submit" value="Save">
                <input class="ui small basic button" type="reset" value="Reset">
                </form>

和模型 mberita.php

function get_berita()
    {   
        $this->db->order_by('id_berita','asc');
        $data = $this->db->get('berita_ukm');
        return $data->result();
    }

    //untuk menambah berita
    function insert_berita($data)
    {
        print_r($data);
        $this->db->insert('berita_ukm', $data);
    }

和控制器 berita.php

function index()
    {
        $this->data['berita'] = $this->mberita->get_berita();
        //var_dump($this->mberita->get_berita());
        $this->data['title'] ='UKM Taekwondo | berita';
        $this->data['orang'] = $this->mlogin->dataPengguna($this->session->userdata('username'));
        $this->data['contents'] = $this->load->view('admin/berita/view_berita', $this->data, true);
        $this->load->view('template/wrapper/admin/wrapper_ukm',$this->data);
    }

    function tambah_berita()
    {

        $this->form_validation->set_rules('id_berita', 'Id Berita', 'required|numeric');
        $this->form_validation->set_rules('tanggal', 'Tanggal', 'required');
        $this->form_validation->set_rules('judul_berita', 'Judul Berita', 'required');
        $this->form_validation->set_rules('content', 'Content', 'required');

        if ($this->form_validation->run() == FALSE) 
        {
            $this->data['contents'] = $this->load->view('admin/berita/tambah_berita', '', true);

        }else{

            $this->load->model('mberita');

            $data = array(
                'id_berita' => $this->input->post('id_berita'),
                'tanggal' => $this->input->post('tanggal'),
                'judul_berita' => $this->input->post('judul_berita'),
                'content' => $this->input->post('content')

            );

            $this->mberita->insert_berita($data);
        }

        $this->data['orang'] = $this->mlogin->dataPengguna($this->session->userdata('username'));
        $this->load->view('template/wrapper/admin/wrapper_ukm',$this->data);
    }

请帮我做什么。谢谢

【问题讨论】:

  • 您有任何错误或其他问题以及 print_r($data) 是否打印数据
  • 您遇到什么错误?仔细查看表单的操作网址:action="&lt;?php echo base_url();?&gt;index.php/admin/berita/tambah_berita"
  • 没有错误,但是当我 print_r($data) 结果为 NULL
  • 您的表单重定向到您的控制器 tambah_berita
  • 我很抱歉。我是新手,我不明白如何将您的控制器重定向到您的控制器 tambah_berita。你能告诉我怎么做吗?

标签: php mysql codeigniter sql-insert


【解决方案1】:

请使用这个表达方式:

echo form_open('admin/berita/tambah_berita');

而不是

<form name="form" action="<?php echo base_url();?>index.php/admin/berita/tambah_berita" method="post">

但在 config/autoload.php 中加载帮助程序“表单”之前,或者您可以像这样手动加载控制器:

$this->load->helper('form');

【讨论】:

    猜你喜欢
    • 2015-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-04
    • 2016-09-18
    • 2017-10-24
    • 2017-06-21
    • 1970-01-01
    相关资源
    最近更新 更多