현재 codeigniter를 사용하여 데이터베이스에 데이터를 추가하려고합니다. 이미 활성 메소드를 사용하여 등록 페이지를 설정하고 뉴스 추가 양식에 대해 동일한 메소드를 사용하려고했지만 실패했습니다.codeigniter를 사용하여 데이터베이스에 데이터 추가
제출을 클릭하면 페이지를 찾을 수 없다는 메시지가 표시되고 url에 컨트롤러 기능 이름이 표시됩니다. 이것은 의도적으로 필드를 공백으로 두었을 때와 동일합니다. 데이터베이스를 검사했는데 레코드가 추가되지 않았으며 PHP 로그 오류도 없었습니다.
보기 :
<?php echo form_open('add/add_article'); ?>
<?php echo form_input('title', set_value('title', 'Title')); ?><br />
<?php echo form_textarea('content', set_value('content', 'Content')); ?><br />
<?php echo form_input('author', set_value('author', 'Author')); ?>
<?php echo form_submit('submit', 'Add Article'); ?>
<?php echo validation_errors('<p class="error">');?>
<?php echo form_close(); ?>
컨트롤러 :
class Add extends CI_Controller {
public function __construct() {
parent::__construct();
}
public function index() {
$this->load->view('admin/add');
}
public function add_article() {
$this->load->library('form_validation');
$this->form_validation->set_rules('title', 'Title', 'trim|required');
$this->form_validation->set_rules('content', 'Content', 'trim|required');
$this->form_validation->set_rules('author', 'Author', 'trim|required');
if($this->form_validation->run() == FALSE) {
$this->index();
}else{
$this->load->model('news_model');
if($query = $this->news_model->addArticle()) {
$this->load->view('news');
}else {
$this->load->view('news');
}
}
}
}
모델 :
대신 삽입 사용 업데이트public function __construct() {
parent::__construct();
}
function addArticle() {
$data =array(
'title' => $this->input->post('title'),
'content' => $this->input->post('content'),
'author' => $this->input->post('author'),
'username' => $this->input->post('username'));
$insert = $this->db->insert('news', $data);
return $insert;
}
}
양식의 작업에서 원본으로 무엇을 볼 수 있습니까? –
소스에서 내가 add_controller와 add_article 함수를 추가하려고하는 것을 알고 있습니다. localhost/codeigniter/add/add_controller 그리고 페이지를 찾을 수 없다는 것은 무엇을 의미합니까? Ive는 if 문의 컨트롤러에서 리디렉션을 사용해 보았습니다. – Shimsham84
'echo form_open ('index.php/add/add_article ');' –