【发布时间】: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="<?php echo base_url();?>index.php/admin/berita/tambah_berita" -
没有错误,但是当我 print_r($data) 结果为 NULL
-
您的表单重定向到您的控制器 tambah_berita
-
我很抱歉。我是新手,我不明白如何将您的控制器重定向到您的控制器 tambah_berita。你能告诉我怎么做吗?
标签: php mysql codeigniter sql-insert