从零开发一个留言板页面
提示
学习本教程您需要先掌握基础PHP知识
本教程意在教会您编写控制器、创建模版、查询数据库
1、创建php程序
control
文件夹是我们的程序文件夹- 我们在
control
文件夹新建一个newpage.php
class
名为文件名_controller
,继承controller
文件名: /control/newpage.php
<?php
class newpage_controller extends controller
{
}
1
2
3
4
5
2
3
4
5
2、加载留言版模版
- 路由规则: /
文件名
/方法名
留言板首页是http://域名/newpage/index
,所以方法名是index
- 执行
db::select
从数据库查询数据赋值到$list
- 加载模版。 参考:模版加载
function index()
{
$list = db::select("select * from datalist");
require self::tpl('newpage');
}
1
2
3
4
5
2
3
4
5
3.把留言写入数据库
- 添加留言保存方法
save
- 助手函数
gp
获取留言存入变量$data
- 执行
db::query
数据库$sql
语句存入数据库- 返回到留言板显示页面
/newpage/index
function save(){
$data = gp('data');
db::query("insert into datalist (`data`) values ('$data')");
self::redirect('/newpage/index');
}
1
2
3
4
5
2
3
4
5
最后得到的`/control/newpage.php`
<?php
class newpage_controller extends controller
{
function index()
{
$list = db::select("select * from datalist");
require self::tpl('newpage');
}
function save()
{
$data = gp('data');
db::query("insert into datalist (`data`) values ('$data')");
self::redirect('/newpage/index');
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
4.创建模版
- 在模版文件夹下创建
newpage.htm
- 默认模版文件夹目录为
/templates/default
- 这里用到了
foreach
列表循环标签,参考上节:模版标签
最终模版
<!DOCTYPE html>
<html>
<head>
<title>留言板</title>
</head>
<body>
<form action="/newpage/save">
<textarea name="data"></textarea>
<input type="submit" value="提交" />
</form>
<ul>
<!-- foreach $list -->
<li>{$data}</li>
<!-- /foreach -->
</ul>
</body>
</html>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
5.创建数据表
CREATE TABLE `datalist` (
`id` int NOT NULL AUTO_INCREMENT PRIMARY KEY,
`data` text NOT NULL
);
1
2
3
4
2
3
4
访问
http://域名/newpage/index
即可查看我们的留言板
至此,我们的第一个插件完成了