napisać funkcję edycji w celu zaktualizowania aktualności za info, mój kod:
to funkcja plik kontroler:stanie aktualizować dane w bazie danych za pośrednictwem formularza CakePHP
public function editnews($id) {
$this->layout = "news"; //tynemc call by this statement
$this->loadModel('News'); //model call
$this->loadModel('Category'); //load news category
if ($this->request->is('post')) {
if (move_uploaded_file($this->request->data['News']['image_url']['tmp_name'], WWW_ROOT . 'media/'. $this->request->data['News']['image_url']['name'])) {
$this->request->data['News']['image_url'] = time() . $this->request->data['News']['image_url']['name'];
}$this->News->save($this->request->data['News']);//data save by this statement
$msg = '<div class="alert alert-success">
<button type="button" class="close" data-dismiss="alert">×</button>
<strong> News update successfully </strong>
</div>';
$this->Session-> setFlash($msg);
return $this->redirect('editnews');
}
if (!$this->request->data) { // id wise data search
$data = $this->News->findById($id);
$this->request->data = $data;
}
$this->set('categories', $this->Category->find("list"));//categories load in dropdown
}
to kod forma plik CTP działanie:
<?php echo $this->Form->create('News', array(
'inputDefaults' => array(
'label' => false,
'div' => false
),
'id' => 'form-validate',
'class' => 'form-horizontal',
'novalidate' => 'novalidate',
'enctype' => 'multipart/form-data',
'controller' => 'admins',
'action' => 'editnews'
)
);
?>
Nie edytowałem tytułu, obrazu, newslettera, nie mogę zapisać informacji o aktualnościach, dlaczego to działa i jak mogę poprawić moją funkcję edycji rekordu?
dziękuję, ale nie mogę zaktualizować pola obrazu !!! –
tak. Wiem, że skomentowałem ten kod. Oto kod przeniesienia obrazu i aktualizacji. Umieść ten kod w funkcji. if (move_uploaded_file ($ data ['News'] ['image_url'] ['tmp_name'], WWW_ROOT. 'media /'. $ data ['News'] ['image_url'] ['name'])) { $ data ['News'] ['image_url'] = $ data ['News'] ['image_url'] ['name']; } –