0
Codeigniterには、それを知るためのチュートリアルとその使い方があります。このチュートリアルでは、データベース内のテーブルに要素を作成する方法について説明しますが、この要素の更新方法は教えていません。私はcodeigniterライブラリを使用して更新クエリを作成しようとしていますが、更新ビューのフォームは送信しません。Codeigniterの更新フォームは提出しません
public function update_news($slug)
\t \t \t {
\t \t \t $this->load->helper('url');
\t \t \t $data = array(
\t \t \t 'title' => $this->input->post('title'),
\t \t \t 'slug' => $slug,
\t \t \t 'text' => $this->input->post('text')
\t \t \t );
\t \t \t $this->db->where('slug', $slug);
\t \t \t $this->db->update('news', $data);
\t \t \t }
ニュースCONTROLLER AT:
public function update($slug)
{
$this->load->helper('form');
$this->load->library('form_validation');
$data['title'] = 'Update a news item';
$this->form_validation->set_rules('title', 'Title', 'required');
$this->form_validation->set_rules('text', 'Text', 'required');
if ($this->form_validation->run() === FALSE)
{
// The form was NOT posted
// So we load the view
$data['news_item'] = $this->news_model->get_news($slug);
$this->load->view('templates/header', $data);
$this->load->view('news/update', $data);
$this->load->view('templates/footer');
}
else
{
// The form was submitted
$data = array(
'title' => $this->input->post('title'), //-->post variable
'slug' => $this->input->post('slug'),
'text' => $this->input->post('text')
);
$this->news_model->update_news($slug, $data);
$this->load->view('news/success');
}
}
のUPDATE VIEW AT:NEWS_MODEL AT
<h2><?php echo $title; ?></h2>
<?php echo validation_errors(); ?>
<?php echo form_open('news/update') ;?>
<label for="title">Title</label>
<input type="input" name="title" /><br />
<label for="text">Text</label>
<textarea name="text"></textarea><br />
<input type="submit" name="submit" value="Update news item" />
</form>
私は「はconsole.log()」を使用してコードをテストしてみた問題は、更新ビューのフォームが提出していないということのようですが、私は理由を理解することはできませんフォームは、作成フォームに似ているので、これは完璧に動作します:
<h2><?php echo $title; ?></h2>
<?php echo validation_errors(); ?>
<?php echo form_open('news/create'); ?>
<label for="title">Title</label>
<input type="input" name="title" /><br />
<label for="text">Text</label>
<textarea name="text"></textarea><br />
<input type="submit" name="submit" value="Create news item" />
</form>
それはCodeIgniterのサンプルコードではその方法であり、それはまだ動作しません。 –
そのエラーは何ですか? – nima
エラーは「見つからない404」ですが、これは更新ビューのフォームのためだと思いますが、解決方法はわかりません。 –