攻克CakePHP系列三 表单数据增删改_PHP
程序员文章站
2022-05-21 20:29:49
...
这里声明一点,上例中不小心把数据库表中lastupd字段错打成lastudp,本例子予以更正。
$html->link('edit', "/companies/edit/".$company['Company']['id']); ?>
除上诉字段数据库与上例一致。
工程仍沿用上例,如下图:
代码依次为:
database.php:与上例一致。
companies_controller.php:
- class CompaniesController extends AppController
- {
- var $name = 'Companies';
- function index()
- {
- $this->set('companies', $this->Company->findAll());
- }
- function view($id = null)
- {
- $this->Company->id = $id;
- $this->set('company', $this->Company->read());
- }
- function add()
- {
- if (!emptyempty($this->data))
- {
- if ($this->Company->save($this->data))
- {
- $this->flash('Your post has been saved.','/companies');
- }
- }
- }
- function edit($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');
- }
- }
- }
- function delete($id)
- {
- $this->Company->del($id);
- $this->flash('The post with id: '.$id.' has been deleted.', '/companies');
- }
- }
- ?>
company.php:
- class Company extends AppModel
- {
- var $name = 'Company';
- var $validate = array(
- 'company' => VALID_NOT_EMPTY,
- 'price' => VALID_NOT_EMPTY,
- 'change' => VALID_NOT_EMPTY,
- 'lastupd' => VALID_NOT_EMPTY
- );
- }
- ?>
index.thtml:
-
Test companies
Id company price change last update - foreach ($companies as $company): ?>
$company['Company']['id']; ?> - $html->link($company['Company']['company'], "/companies/view/".$company['Company']['id']); ?>
- $html->link('Delete', "/companies/delete/{$company['Company']['id']}", null, 'Are you sure?')?>
$company['Company']['price']; ?> $company['Company']['change']; ?> $company['Company']['lastupd']; ?> - endforeach; ?>
- $html->link('add', "/companies/add"); ?>
view.thtml:
Company: $company
Id: $company['Company']['id']?>
Price: $company['Company']['price']?>
Change: $company['Company']['change']?>
LastUpdate: $company['Company']['lastupd']?>
add.thtml:
-
Add Company
edit.thtml:
-
Edit Company
如此访问http://localhost/cakephp/companies即可测试代码。