The following code is the implementation code for adding, deleting and modifying form data under CakePHP
. Here is a statement. In the above example, the lastupd field in the database table was accidentally typed as lastudp. This example will correct it.
The database is the same as the above example except for the appeal fields.
The project still uses the above example, as shown below:
The codes are as follows:
database.php: Same as the above example.
companies_controller.php:
<?php
classCompaniesControllerextendsAppController
{
var$name='Companies';
functionindex()
{
$this->set('companies',$this->Company->findAll());
}
functionview($id= null)
{
$this->Company->id =$id;
$this->set('company',$this->Company->read());
}
functionadd()
{
if(!emptyempty($this->data))
{
if($this->Company->save($this->data))
{
$this->flash('Your post has been saved.','/companies');
}
}
}
functionedit($id= null)
{
if(emptyempty($this->data))
{
$this->Company->id =$id;
$this->data =$this->Company->read();
}
else
{
if($this->Company->save($this->data['Company']))
{
$this->flash('Your post has been updated.','/companies');
}
}
}
functiondelete($id)
{
$this->Company->del($id);
$this->flash('The post with id: '.$id.' has been deleted.','/companies');
}
}
?>
company.php:
<?php
classCompanyextendsAppModel
{
var$name='Company';
var$validate=array(
'company'=> VALID_NOT_EMPTY,
'price'=> VALID_NOT_EMPTY,
'change'=> VALID_NOT_EMPTY,
'lastupd'=> VALID_NOT_EMPTY
);
}
?>
index.thtml:
<h1>Test companies</h1>
<table>
<tr>
<th>Id</th>
<th>company</th>
<th>price</th>
<th>change</th>
<th>last update</th>
</tr>
<?phpforeach($companiesas$company): ?>
<tr>
<td><?phpecho$company['Company']['id']; ?></td>
<td>
<?phpecho$html->link($company['Company']['company'],"/companies/view/".$company['Company']['id']); ?>
<?phpecho$ html->link('Delete',"/companies/delete/{$company['Company']['id']}", null,'Are you sure?')?>
</td>
<td><?phpecho$company['Company']['price']; ?></td>
<td><?phpecho$company['Company']['change']; ?></td>
<td><?phpecho$company['Company']['lastupd']; ?></td>
</tr>
<?phpendforeach; ?>
</table>
<p>
<?phpecho$html->link('add',"/companies/add"); ?>
</p>
view.thtml:
<h1>Company: <?phpecho$company['Company']['company']?></h1>
<p><small>Id: <?phpecho$company['Company']['id']?></small></p>
<p>Price: <?phpecho$company['Company']['price']?></p>
<p>Change: <?phpecho$company['Company']['change']?></p>
<p>LastUpdate: <?phpecho$company['Company']['lastupd']?></p>
<br/>
<p>
<?phpecho$html->link('edit',"/companies/edit/".$company['Company']['id']); ?>
</p>
add.thtml:
<h1>Add Company</h1>
<form method="post"action="<?php echo $html->url('/companies/add')?>">
<p>
Company:
<?phpecho$html->input('Company/company',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Company/company','Company is required.') ?>
</p>
<p>
Price:
<?phpecho$html->input('Company/price',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Company/company','Price is required.') ?>
</p>
<p>
Change:
<?phpecho$html->input('Company/change',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Company/change','Change is required.') ?>
</p>
<p>
Last Update:
<?phpecho$html->input('Company/lastupd',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Company/lastupd','Last Update is required.') ?>
</p>
<p>
<?phpecho$html->submit('Save') ?> <?phpecho$html->link('return',"/companies/index"); ?>
</p>
</form>
edit.thtml:
<h1>Edit Company</h1>
<form method="post"action="<?php echo $html->url('/companies/edit')?>">
<?phpecho$html->hidden('Company/id'); ?>
<p>
Company:
<?phpecho$html->input('Company/company',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Company/company','Company is required.') ?>
</p>
<p>
Price:
<?phpecho$html->input('Company/price',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Company/company','Price is required.') ?>
</p>
<p>
Change:
<?phpecho$html->input('Company/change',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Company/change','Change is required.') ?>
</p>
<p>
Last Update:
<?phpecho$html->input('Company/lastupd',array('size'=>'40'))?>
<?phpecho$html->tagErrorMsg('Company/lastupd','Last Update is required.') ?>
</p>
<p>
<?phpecho$html->submit('Save') ?> <?phpecho$html->link('return',"/companies/index"); ?>
</p>
</form>
You can test the code by visiting http://localhost/cakephp/companies .