O código a seguir é o código de implementação para adicionar, excluir e modificar dados de formulário no CakePHP
. Aqui está uma instrução No exemplo acima, o campo lastupd na tabela do banco de dados foi digitado acidentalmente como lastudp.
O banco de dados é igual ao exemplo acima, exceto pelos campos de apelação.
O projeto ainda utiliza o exemplo acima, conforme mostrado abaixo:
Os códigos são os seguintes:
database.php: Igual ao exemplo acima.
empresas_controller.php:
<?php
classCompaniesControllerextendsAppController
{
var$nome='Empresas';
functionindex()
{
$this->set('empresas',$this->Empresa->findAll());
}
functionview($id= null)
{
$this->Empresa->id =$id;
$this->set('empresa',$this->Empresa->ler());
}
funçãoadicionar()
{
if(!emptyempty($this->dados))
{
if($this->Empresa->salvar($this->dados))
{
$this->flash('Sua postagem foi salva.','/empresas');
}
}
}
editarfunção($id= null)
{
if(vaziovazio($este->dados))
{
$this->Empresa->id =$id;
$this->dados =$this->Empresa->ler();
}
outro
{
if($this->Empresa->save($this->data['Empresa']))
{
$this->flash('Sua postagem foi atualizada.','/empresas');
}
}
}
functiondelete($id)
{
$this->Empresa->del($id);
$this->flash('A postagem com id: '.$id.' foi excluída.','/empresas');
}
}
?>
empresa.php:
<?php
classCompanyextendsAppModel
{
var$nome='Empresa';
var$validate=array(
'empresa'=> VALID_NOT_EMPTY,
'preço'=> VALID_NOT_EMPTY,
'alterar'=> VALID_NOT_EMPTY,
'lastupd'=> VALID_NOT_EMPTY
);
}
?>
index.thtml:
<h1>Empresas de teste</h1>
<tabela>
<tr>
<th>Id</th>
<th>empresa</th>
<th>preço</th>
<th>alterar</th>
<th>última atualização</th>
</tr>
<?phpforeach($empresasas$empresa): ?>
<tr>
<td><?phpecho$empresa['Empresa']['id'] ?></td>;
<td>
<?phpecho$html->link($empresa['Empresa']['empresa'],"/empresas/view/".$empresa['Empresa']['id'] ?>
<?phpecho$ html->link('Delete',"/companies/delete/{$company['Company']['id']}", null,'Tem certeza?')?>
</td>
<td><?phpecho$empresa['Empresa']['preço'] ?></td>;
<td><?phpecho$empresa['Empresa']['alterar'] ?></td>;
<td><?phpecho$company['Company']['lastupd'] ?></td>;
</tr>
<?phpendforeach;>
</tabela>
<p>
<?phpecho$html->link('adicionar',"/empresas/adicionar");
</p>
view.thtml:
<h1>Empresa: <?phpecho$company['Company']['company']?></h1>
<p><small>Id: <?phpecho$company['Company']['id']?></small></p>
<p>Preço: <?phpecho$company['Company']['price']?></p>
<p>Alterar: <?phpecho$company['Company']['change']?></p>
<p>Última atualização: <?phpecho$company['Company']['lastupd']?></p>
<br/>
<p>
<?phpecho$html->link('edit',"/companies/edit/".$company['Company']['id'] ?>
</p>
add.thtml:
<h1>Adicionar empresa</h1>
<form method="post"action="<?php echo $html->url('/companies/add')?>">
<p>
Empresa:
<?phpecho$html->input('Empresa/empresa',array('tamanho'=>'40'))?>
<?phpecho$html->tagErrorMsg('Empresa/empresa','Empresa é obrigatória.') ?>
</p>
<p>
Preço:
<?phpecho$html->input('Empresa/preço',array('tamanho'=>'40'))?>
<?phpecho$html->tagErrorMsg('Empresa/empresa','Preço obrigatório.') ?>
</p>
<p>
Mudar:
<?phpecho$html->input('Empresa/mudança',array('tamanho'=>'40'))?>
<?phpecho$html->tagErrorMsg('Empresa/mudança','Alteração necessária.') ?>
</p>
<p>
Última atualização:
<?phpecho$html->input('Empresa/lastupd',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Empresa/lastupd','Última atualização necessária.') ?>
</p>
<p>
<?phpecho$html->submit('Salvar') ?> <?phpecho$html->link('return',"/empresas/index");
</p>
</form>
edit.thtml:
<h1>Editar empresa</h1>
<form method="post"action="<?php echo $html->url('/companies/edit')?>">
<?phpecho$html->hidden('Empresa/id');
<p>
Empresa:
<?phpecho$html->input('Empresa/empresa',array('tamanho'=>'40'))?>
<?phpecho$html->tagErrorMsg('Empresa/empresa','Empresa é obrigatória.') ?>
</p>
<p>
Preço:
<?phpecho$html->input('Empresa/preço',array('tamanho'=>'40'))?>
<?phpecho$html->tagErrorMsg('Empresa/empresa','Preço obrigatório.') ?>
</p>
<p>
Mudar:
<?phpecho$html->input('Empresa/mudança',array('tamanho'=>'40'))?>
<?phpecho$html->tagErrorMsg('Empresa/mudança','Alteração necessária.') ?>
</p>
<p>
Última atualização:
<?phpecho$html->input('Empresa/lastupd',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Empresa/lastupd','Última atualização necessária.') ?>
</p>
<p>
<?phpecho$html->submit('Salvar') ?> <?phpecho$html->link('return',"/empresas/index");
</p>
</form>
Você pode testar o código visitando http://localhost/cakephp/companies .