Следующий код представляет собой код реализации для добавления, удаления и изменения данных формы в CakePHP
. Вот оператор. В приведенном выше примере поле Lastupd в таблице базы данных было случайно введено как Lastudp. Этот пример исправит это.
База данных такая же, как в приведенном выше примере, за исключением полей апелляции.
Проект по-прежнему использует приведенный выше пример, как показано ниже:
Коды следующие:
data.php: то же, что и в приведенном выше примере.
компании_контроллер.php:
<?php
классCompaniesControllerextendsAppController
{
var$name='Компании';
functionindex();
{
$this->set('companies',$this->Company->findAll());
}
functionview($id= ноль)
{
$this->Company->id =$id;
$this->set('company',$this->Company->read());
}
функциядобавить()
{
if(!emptyempty($this->data))
{
if($this->Company->save($this->data))
{
$this->flash('Ваше сообщение сохранено.','/companies');
}
}
}
functionedit($id= ноль)
{
если (пустой ($this->данные))
{
$this->Company->id =$id;
$this->data =$this->Company->read();
}
еще
{
if($this->Company->save($this->data['Company']))
{
$this->flash('Ваше сообщение было обновлено.','/companies');
}
}
}
functiondelete ($id)
{
$this->Компания->del($id);
$this->flash('Сообщение с идентификатором: '.$id.' было удалено.','/company');
}
}
?>
компания.php:
<?php
классКомпанирасширяетМодельПриложения
{
var$name='Компания';
var$validate=array(
'компания'=> VALID_NOT_EMPTY,
'цена'=> VALID_NOT_EMPTY,
'изменить'=> VALID_NOT_EMPTY,
'lastupd'=> VALID_NOT_EMPTY
);
}
?>
index.thtml:
<h1>Тестовые компании</h1>
<таблица>
<тр>
<th>Идентификатор</th>
<th>компания</th>
<th>цена</th>
<th>изменить</th>
<th>последнее обновление</th>
</tr>
<?phpforeach($companyas$company): ?>
<тр>
<td><?phpecho$company['Компания']['id'] ?></td>;
<тд>
<?phpecho$html->link($company['Company']['company'],"/companies/view/".$company['Company']['id']); ?>
<?phpecho$ html->link('Delete',"/companies/delete/{$company['Company']['id']}", null,'Вы уверены?')?>
</td>
<td><?phpecho$company['Компания']['цена'] ?></td>;
<td><?phpecho$company['Компания']['изменить'] ?></td>;
<td><?phpecho$company['Компания']['lastupd'] ?></td>;
</tr>
<?phpendforeach ?>
</таблица>
<р>
<?phpecho$html->link('add',"/companies/add" ?>
</p>
view.thtml:
<h1>Компания: <?phpecho$company['Company']['company']?></h1>
<p><small>Идентификатор: <?phpecho$company['Company']['id']?></small></p>
<p>Цена: <?phpecho$company['Company']['price']?></p>
<p>Изменить: <?phpecho$company['Company']['change']?></p>
<p>LastUpdate: <?phpecho$company['Company']['lastupd']?></p>
<br/>
<р>
<?phpecho$html->link('edit',"/companies/edit/".$company['Company']['id']);
</p>
add.thtml:
<h1>Добавить компанию</h1>
<form метод="post"action="<?php echo $html->url('/companies/add')?>">
<р>
Компания:
<?phpecho$html->input('Компания/компания',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Компания/компания','Укажите компанию.') ?>
</p>
<р>
Цена:
<?phpecho$html->input('Company/price',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Компания/компания','Укажите цену.') ?>
</p>
<р>
Изменять:
<?phpecho$html->input('Company/change',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Компания/изменение','Требуется изменение.') ?>
</p>
<р>
Последнее обновление:
<?phpecho$html->input('Company/lastupd',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Company/lastupd','Требуется последнее обновление.') ?>
</p>
<р>
<?phpecho$html->submit('Сохранить') ?> <?phpecho$html->link('return',"/companies/index" ?>
</p>
</форма>
edit.thtml:
<h1>Редактировать компанию</h1>
<form метод="post"action="<?php echo $html->url('/companies/edit')?>">
<?phpecho$html->скрытый('Компания/идентификатор' ?>
<р>
Компания:
<?phpecho$html->input('Компания/компания',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Компания/компания','Укажите компанию.') ?>
</p>
<р>
Цена:
<?phpecho$html->input('Company/price',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Компания/компания','Укажите цену.') ?>
</p>
<р>
Изменять:
<?phpecho$html->input('Company/change',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Компания/изменение','Требуется изменение.') ?>
</p>
<р>
Последнее обновление:
<?phpecho$html->input('Company/lastupd',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Company/lastupd','Требуется последнее обновление.') ?>
</p>
<р>
<?phpecho$html->submit('Сохранить') ?> <?phpecho$html->link('return',"/companies/index" ?>
</p>
</форма>
Вы можете протестировать код, посетив http://localhost/cakephp/companies .