上节课完成了开发一个新闻发布系统的相关的前期准备工作,完成了登录页面和后台主界面。
这节课就来完成新闻信息一览查询页面。
编写新闻一览查询网页
新闻一览查询网页,可以参照之前的学生分数信息一览查询页面进行开发。
数据来源暂时采用写好的假数据进行测试。
new代码如下:
new代码如下:
news.css代码如下:
news.js代码如下:
浏览器打开登录页面,输入正确账号和密码登录到后台主页面:
点击主菜单“新闻信息”:
可以看到网页进入之后,默认就查询出所有的数据了。
检索条件新闻标题和作者输入2个任意文字,点击查询按钮,可以看到页面刷新了,但数据没有变化,这是因为查询的逻辑暂时还没有实现,返回的还是假数据。
点击新增按钮和修改按钮,页面都会迁移到新的网页new,由于目前还没编写好,所以点击之后会显示错误信息。
点击删除按钮,会弹出提示窗口:
点击确定之后,页面会刷新,数据并没有变化。
增加翻页功能
根据前面的页面功能设计,当一览查询数据量比较大的时候,需要通过翻页功能来显示。
这里考虑方便起见,采用的翻页方式是查询出全部数据,然后页面记住当前显示的是第几页,然后循环遍历显示的时候,只显示当前页范围内的记录数据,其它数据忽略不显示。
这种方式从性能角度来说不是最佳方案,但用在对性能要求不高的一般场合足矣。
主要的方法是将查询的全部数据存在session当中,然后每次点击翻页的链接时,修改当前页的数值,然后遍历循环显示当中,根据当前页的数值,显示范围内的数据。
new代码修改如下:
new代码如下:
为了方便测试,假定每页显示2条记录。
news.css代码如下:
news.js代码如下:
打开一览页面:
可以看到翻页区域显示了2个数字,代表总共有2页,其中页1是不能点击的,表示当前是第1页。
此时,点击数字链接2:
可以看到当前页变成了数字2不能点击,并且显示的数据也是第2页的了。
为了测试更多页数据翻页情况,将假数据的总数变为25条,并需改为循环构造假数据,这样将显示总共13页。并且10页的翻页链接页会换行。
new代码如下:
重新打开一览页面:
可以看到显示了13页,并且页数也换行了。点击其中的第8页:
可以看到显示了正确的页的数据。
编写SQL查询逻辑
接下来,参照之前编写学生分数信息查询的SQL实现方法,来实现根据新闻标题和作者查询相应的新闻信息记录。
new代码修改如下:
重新打开一览页面:
可以看到默认没有任何记录数据。这是因为数据库表当中还没有数据。
使用数据库客户端软件,手工往数据库当中增加2条记录如下:
重新打开一览页面:
可以看到数据被检索出来了。
在2个检索条件输入对应的值,点击查询按钮:
可以看到满足条件的记录被查询出来了。
编写SQL删除逻辑
new代码修改如下:
重新打开一览页面:
点击第2条记录的右侧的删除链接,然后点击确定:
可以看到数据被删除掉了。
去数据库里面手工查看一下,确认数据确定删除了。
将数据库操作代码分离到独立文件
考虑到将来的逻辑代码的共通行,可以将关于数据库的相关的操作函数全部分离到一个单独的文件中。
这样以后这些函数都可以复用了。
新建一个文件en,将new的3个函数剪切过去:
en代码如下:
new修改如下:
这样,如果后续需要修改SQL语句,则只需要修改en文件即可。
下节课将继续这个软件项目,编写新建和编辑页面。