摘要:【文章摘要】这节课程我们来实现一个很实用的功能“回收站”,回收站功能听着高大尚,说他简单也可以无比简单。我相信部分同学通过已学到的知识就能自己琢磨出回收站的功能
这节课程我们来实现一个很实用的功能“回收站”,回收站功能听着高大尚,说他简单也可以无比简单。
我相信部分同学通过已学到的知识就能自己琢磨出回收站的功能了。
说起来其实非常简单,其实跟发布到指定栏目的功能没多大区别。一个是在栏目名叫“已发布”的栏目里,一个是在栏目名叫“回收站”的栏目里而已。
区别是这些个栏目一旦做好就不会变更,所以不需要单独建立一个类似栏目表一样的数据表来管理。
所以我们选择了简单的用一个字段来表示这个状态。
进入phpmyadmin,进入article表,点击结构之后添加一个字段。如下图所示:
字段名为status,类型为TINYINT,长度2,默认值为1。如下图所示:
这次我用了TINYINT类型,需要存储的值很小的时候就用这个类型。一个文章的状态无非就是已发布,待审核,被退稿,回收站等等几个状态而已。而且是固定值不会变,并不会像自增ID那样越来越多。
INT类型有很多,如果是有心想在程序方面发展的同学就有必要好好研究一下每个类型能存储的范围。根据不同的情况合理选择字段类型是开发优化过程非常重要且最基本的环节。
但我没兴趣当程序猿,所以我没太仔细的研究,因此我也没资格解释给大家。
创建好之后回到数据库里看我们已发布的数据的话,可以看到所有的status也都变成了1。
打开article.php页面,把article_list.php部分的query语句改成如下:
比原来增加的代码只有WHERE status=’1’,不用解释了吧?
再把删除文章部分的query语句改成如下:
UPDATE命令在修改文章的时候已经学过了,相信大家也能看懂上面语句是什么意思。
现在打开浏览器进入我们的后台文章列表,点击删除按钮。原来的删除功能是不是依然的有效?再到我们的数据库里看文章表,可以看到我们刚删除的那条数据还在。只不过他的status值变成了99。
再到article.php页面增加如下代码:
打开article_list.php页面,找到添加文章的a标签部分,修改成如下之后保存:
保存好之后复制一个article_list.php的副本出来,文件名改成article_recycle.php。HTML中strong标签用于加粗文字,记得在article_recycle.php中把strong标签加到回收站那去噢。
运行看看我们的成果吧,是不是超级简单?简单到无语了吧?就这样一个回收站的功能就算是做好了。不过这时候文章列表和分页列表都会出现BUG噢。问题在哪里呢?当作业留给大家来FIX咯。
下面再来一个很爽的功能,清空回收站!打开article_recycle.php页面增加如下代码:
再到article.php页面增加如下代码:
去看一下成果吧?清空一下~~~是不是特爽?可能因为我有整理控吧,特别喜欢清空~~~
这可是真删除了,但一般一个正经的项目很少会真的把数据删除掉的,其实清空也还是在改状态。当然不仅限于此,还可以有独立的数据表或者数据库专门用来存储已删除的数据,清空的时候就转移到专用的库里神马的。
其实本节课程完全没有新的知识点,主要目的是为了让大家深刻体会到我们虽然只学了那么10节课程,其实能做的功能还是很多很多的。
其实通过本节内容,相信大家也能联想到很多后台功能,比如审核,退稿,这都是一个套路。如果再动动脑筋完全可以做出一套简单的工作流程序。好好动脑筋噢~~~
留作业啦:
1. fix掉分页功能的BUG。提醒:select count的时候出现了数量统计错误。而且两个页面都要用到分页,想想如何简化代码。
2. 做一个恢复文章的功能,把放到回收站里的文章再回复到已发布的文章里去。
我如此绞尽脑汁的利用已有的知识做一些实用的功能,为了什么?为了让大家好好巩固已学到的知识,并且希望大家多动脑筋。你会想,你就能做出来!
相关文章推荐
网站谷歌评分90+意味着什么?2022-09-06
怎样将不安全网站变成安全网站访问?2022-09-26
网站排名下降,可能跟算法更新没关系2022-09-20
网站如何设置高质量的网页标题?2022-09-14
做外贸网站选哪些语言?法语、德语最吃香2022-09-13