时时商务社区
标题:
攻克CakePHP系列三 表单数据增删改
[打印本页]
作者:
新格网络
时间:
2018-2-14 09:22
这里声明一点,上例中不小心把数据库表中lastupd字段错打成lastudp,本例子予以更正。
除上诉字段数据库与上例一致。
工程仍沿用上例,如下图:
代码依次为:
database.php:与上例一致。
companies_controller.php:
[color=]class
CompaniesController
[color=]extends
AppController
{
[color=]var
[color=]$name
=
[color=]'Companies'
;
[color=]function
index()
{
[color=]$this
->set(
[color=]'companies'
,
[color=]$this
->Company->findAll());
}
[color=]function
view(
[color=]$id
= null)
{
[color=]$this
->Company->id =
[color=]$id
;
[color=]$this
->set(
[color=]'company'
,
[color=]$this
->Company->read());
}
[color=]function
add()
{
[color=]if
(!empty
[color=]empty
(
[color=]$this
->data))
{
[color=]if
(
[color=]$this
->Company->save(
[color=]$this
->data))
{
[color=]$this
->flash(
[color=]'Your post has been saved.'
,
[color=]'/companies'
);
}
}
}
[color=]function
edit(
[color=]$id
= null)
{
[color=]if
(empty
[color=]empty
(
[color=]$this
->data))
{
[color=]$this
->Company->id =
[color=]$id
;
[color=]$this
->data =
[color=]$this
->Company->read();
}
else
{
[color=]if
(
[color=]$this
->Company->save(
[color=]$this
->data[
[color=]'Company'
]))
{
[color=]$this
->flash(
[color=]'Your post has been updated.'
,
[color=]'/companies'
);
}
}
}
[color=]function
delete(
[color=]$id
)
{
[color=]$this
->Company->del(
[color=]$id
);
[color=]$this
->flash(
[color=]'The post with id: '
.
[color=]$id
.
[color=]' has been deleted.'
,
[color=]'/companies'
);
}
}
?>[/ol]
company.php:
[color=]class
Company
[color=]extends
AppModel
{
[color=]var
[color=]$name
=
[color=]'Company'
;
[color=]var
[color=]$validate
=
[color=]array
(
[color=]'company'
=> VALID_NOT_EMPTY,
[color=]'price'
=> VALID_NOT_EMPTY,
[color=]'change'
=> VALID_NOT_EMPTY,
[color=]'lastupd'
=> VALID_NOT_EMPTY
);
}
?>[/ol]
index.thtml:
Test companies
Id
company
price
change
last update
[color=]foreach
(
[color=]$companies
[color=]as
[color=]$company
): ?>
echo
[color=]$company
[
[color=]'Company'
][
[color=]'id'
]; ?>
echo
[color=]$html
->link(
[color=]$company
[
[color=]'Company'
][
[color=]'company'
],
[color=]"/companies/view/"
.
[color=]$company
[
[color=]'Company'
][
[color=]'id'
]); ?>
echo
[color=]$html
->link(
[color=]'Delete'
,
[color=]"/companies/delete/{$company['Company']['id']}"
, null,
[color=]'Are you sure?'
)?>
echo
[color=]$company
[
[color=]'Company'
][
[color=]'price'
]; ?>
echo
[color=]$company
[
[color=]'Company'
][
[color=]'change'
]; ?>
echo
[color=]$company
[
[color=]'Company'
][
[color=]'lastupd'
]; ?>
[color=]endforeach
; ?>
echo
[color=]$html
->link(
[color=]'add'
,
[color=]"/companies/add"
); ?>
[/ol]
view.thtml:
Company: echo
[color=]$company
[
[color=]'Company'
][
[color=]'company'
]?>
Id: echo
[color=]$company
[
[color=]'Company'
][
[color=]'id'
]?>
Price: echo
[color=]$company
[
[color=]'Company'
][
[color=]'price'
]?>
Change: echo
[color=]$company
[
[color=]'Company'
][
[color=]'change'
]?>
LastUpdate: echo
[color=]$company
[
[color=]'Company'
][
[color=]'lastupd'
]?>
echo
[color=]$html
->link(
[color=]'edit'
,
[color=]"/companies/edit/"
.
[color=]$company
[
[color=]'Company'
][
[color=]'id'
]); ?>
[/ol]
add.thtml:
Add Company
[color=]"post"
action="url('/companies/add')?>">
Company:
echo
[color=]$html
->input(
[color=]'Company/company'
,
[color=]array
(
[color=]'size'
=>
[color=]'40'
))?>
echo
[color=]$html
->tagErrorMsg(
[color=]'Company/company'
,
[color=]'Company is required.'
) ?>
Price:
echo
[color=]$html
->input(
[color=]'Company/price'
,
[color=]array
(
[color=]'size'
=>
[color=]'40'
))?>
echo
[color=]$html
->tagErrorMsg(
[color=]'Company/company'
,
[color=]'Price is required.'
) ?>
Change:
echo
[color=]$html
->input(
[color=]'Company/change'
,
[color=]array
(
[color=]'size'
=>
[color=]'40'
))?>
echo
[color=]$html
->tagErrorMsg(
[color=]'Company/change'
,
[color=]'Change is required.'
) ?>
Last Update:
echo
[color=]$html
->input(
[color=]'Company/lastupd'
,
[color=]array
(
[color=]'size'
=>
[color=]'40'
))?>
echo
[color=]$html
->tagErrorMsg(
[color=]'Company/lastupd'
,
[color=]'Last Update is required.'
) ?>
echo
[color=]$html
->submit(
[color=]'Save'
) ?> echo
[color=]$html
->link(
[color=]'return'
,
[color=]"/companies/index"
); ?>
[/ol]
edit.thtml:
Edit Company
[color=]"post"
action="url('/companies/edit')?>">
echo
[color=]$html
->hidden(
[color=]'Company/id'
); ?>
Company:
echo
[color=]$html
->input(
[color=]'Company/company'
,
[color=]array
(
[color=]'size'
=>
[color=]'40'
))?>
echo
[color=]$html
->tagErrorMsg(
[color=]'Company/company'
,
[color=]'Company is required.'
) ?>
Price:
echo
[color=]$html
->input(
[color=]'Company/price'
,
[color=]array
(
[color=]'size'
=>
[color=]'40'
))?>
echo
[color=]$html
->tagErrorMsg(
[color=]'Company/company'
,
[color=]'Price is required.'
) ?>
Change:
echo
[color=]$html
->input(
[color=]'Company/change'
,
[color=]array
(
[color=]'size'
=>
[color=]'40'
))?>
echo
[color=]$html
->tagErrorMsg(
[color=]'Company/change'
,
[color=]'Change is required.'
) ?>
Last Update:
echo
[color=]$html
->input(
[color=]'Company/lastupd'
,
[color=]array
(
[color=]'size'
=>
[color=]'40'
))?>
echo
[color=]$html
->tagErrorMsg(
[color=]'Company/lastupd'
,
[color=]'Last Update is required.'
) ?>
echo
[color=]$html
->submit(
[color=]'Save'
) ?> echo
[color=]$html
->link(
[color=]'return'
,
[color=]"/companies/index"
); ?>
[/ol]
如此访问
[color=]http://localhost/cakephp/companies
即可测试代码。
您可能感兴趣的文章:
攻克CakePHP(PHP中的Ruby On Rails框架)图文介绍
攻克CakePHP系列一 连接MySQL数据库
CakePHP去除默认显示的标题及图标的方法
攻克CakePHP系列二 表单数据显示
配置Apache2.2+PHP5+CakePHP1.2+MySQL5运行环境
初学CAKEPHP 基础教程
Cakephp 执行主要流程
初品cakephp 入门基础
cakephp打印sql语句的方法
基于CakePHP实现的简单博客系统实例
Nginx配置PHP的Yii与CakePHP框架的rewrite规则示例
cakephp2.X多表联合查询join及使用分页查询的方法
CakePHP框架Session设置方法分析
cakephp常见知识点汇总
欢迎光临 时时商务社区 (http://bbs.4435.cn/)
Powered by Discuz! X3.2