排版比较乱,具体请查看文件里的代码。
流程是先获得提交的信息,取得当前UNIX时间戳(10位数字),以及用户IP,然后插入数据库,并判断插入操作是否成功,真则返回成功信息,假则返回错误信息,并让用户返回上一页。
这时提交功能已经做成功了,你可以提交一些信息,并刷新首页,就可以看见刚提交的留言了。
可能你会发现提交空用户名和空留言也能提交成功。这是因为我们没有判断用户的输入。
在 $time = time(); 的上一行加入下列代码:
这样就行了,即判断是否为空,空则返回失败,并终止脚本。
在这解释以下为什么时间要用UNIX时间戳这样的10位数字,而不用我们熟悉的xxxx-xx-xx xx:xx:xx 这样的格式。用时间戳的好处在于容易比较时间的大小(时间越靠后当然时间戳就越大),容易算出两饿时间之间间隔了多少秒,并可以转换为分,小时,天等。比较灵活。关于UNIX时间戳以及格式转换的详细信息可以查看php手册的time,date和mktime等函数。
你是否发现此时提交的留言就算自己输入了换行,但显示时却不换行,而只显示一个空格呢?那是因为我们提交的换行是\n,这个只有在HTML源代码里才显示出换行,而浏览器中显示的换行应该是
,所以我们要进行以下替换,把留言内容中的\n替换为
。
为此,我们增加一个ubb.inc.php文件,放在includes文件夹下,它就一个函数ubb,并包含1个替换,具体代码请查看对应文件。

发表评论