2013-06-11 2 views
0

ugh, im все еще имеет проблемы с пониманием форм. Ive смотрел несколько руководств/видео без везения (имейте в виду, что я бегу с довольно большим сном), поэтому я подумал, что могу попросить о помощи здесь.Codeigniter создает простую форму для обновления db

Предположим, у меня есть таблица под названием Notes и внутри таблицы Notes у меня есть столбец с именем «пользователь» и «внимание»

Я просто хочу изменить, что «внимание» и «пользователь» в таблице Notes, используя кнопку формы и отправки.

может ли кто-нибудь собрать то, что должен выглядеть контроллер и модель? Я знаю, что я много спрашиваю, поэтому я ценю ваше время.

edit1

Моя модель:

function edit($id) 
{ 
      $this->db->where('id', $id); 
      $this->db->update('company_contacts', $data); 

} 

контроллер:

public function edit($id) { 
      if (isset($_POST["edit"])) 
      { 
       $this->Notes_model->edit($id); 
       $url = "/notes/view/" . $id; 
       redirect($url); 
      } 
     $data['data'] = $this->Notes_model->view($id); 
     $this->load->view('templates/header'); 
     $this->load->view('notes/edit', $data); 
     $this->load->view('templates/footer'); 
    } 
+0

, что бы ваш пробовали? – tomexsans

+0

Я только что отредактировал вопрос, чтобы добавить мою текущую модель и контроллер. Однако ive модифицировал его в 100 раз, чтобы его не было правильно. – bnelsonjax

+1

Ваш опубликованный код должен вызывать ошибки/уведомления в функции редактирования() as-is модели, поскольку вы используете $ data, но эта функция не определена в функции. Что такое $ данные, которые должны быть в этой функции? – Lepidosteus

ответ

-1

Попробуйте это.

Ваша модель должна быть

function edit($id) 
{ 
    $data = array(
       'note' => $_POST['note'], 
       'user'=> $_POST['user']// I don't think you need this. 
      ); 

    $this->db->where('id', $id); 
    $this->db->update('company_contacts', $data); 

} 
+0

Я не уверен, почему вы непосредственно передавали входные значения модели, а не переносили их через контроллер. – Aniket

0

Это, как я сделал бы это. Этот подход немного отличается от того, что вы сделали, когда я использую помощников. Для использования моего кода вам необходимо включить вспомогательный помощник input.

Контроллер

public function edit($id) { 
    if (isset($this->input->post('edit')) 
    { 
    $this->load->model('Notes_model'); // You might have missed out on loading the model 

    // Since you wish to edit the note and user fields in your table, you need to get the value from the page you are submitting the request from 
    $note = $this->input->post('note'); 
    $user = $this->input->post('user'); 

    $data = array(
     'note' => $note, 
     'user' => $user 
    ); 

    $this->Notes_model->edit($id, $data); 
    $url = "/notes/view/" . $id; 
    redirect($url); 
    } 
    $data['data'] = $this->Notes_model->view($id); 
    $this->load->view('templates/header'); 
    $this->load->view('notes/edit', $data); 
    $this->load->view('templates/footer'); 
} 

Модель

function edit($id, $data) 
{ 
    $this->db->where('id', $id); 
    $this->db->update('company_contacts', $data); 
} 
Смежные вопросы