无数据库支持的留言板
时间:2021-07-01 10:21:17
帮助过:2人阅读
无数据库支持的简单留言板,主要是对文件方式存储和读取数据的练习。
- /**
- * 这是一个单页面没有数据库支持的留言板系统
- * 知识点:
- * 1、heredoc文档的使用:>>>EOT EOT; 第二个EOT行前不能有任何空格
- * 2、文件的读写操作
- * 3、fread和fgets区别,fread读取指定长度的字符串,fgets读取一行,刚好保存数据的时候一行是一个留言内容,利于读取
- *
- * 4、文件锁,本版还没实施,只写出了参考代码。
- *
- */
- $file = "message.txt";
- if(isset($_POST)&&!empty($_POST)){
- $post = $_POST;
- $content ="标题:".$post['title'].' 内容:'.$post['message']."\n\r";
- if( file_exists($file) ){
- add_message($file,$content);
- }else{
- create_message_file($file,$content);
- }
- }
- /**
- * 初次使用时创建留言文件并保存留言
- * Enter description here ...
- * @param unknown_type $file
- * @param unknown_type $message
- */
- function create_message_file($file,$message){
- $msgh = fopen($file,"w");
- //flock($file, LOCK_EX);
- fwrite($msgh,$message);
- fclose($msgh);
- //echo "添加留言信息成功。";
- echo <<
- EOT;
-
- }
- /**
- * 添加新留言信息到文件中
- * Enter description here ...
- * @param unknown_type $file
- * @param unknown_type $message
- */
- function add_message($file,$message){
- $msgh = fopen($file, "a");
- //flock($msgh,LOCK_EX);
- fwrite($msgh,$message);
- fclose($msgh);
- //echo "你的留言已成功保存。";
- echo <<
- EOT;
- }
- /**
- * 显示留言内容
- * Enter description here ...
- * @param unknown_type $file
- */
- function show_message($file){
- $msgh = fopen($file, "r");
- //flock($msgh, LOCK_EX);
- while($msg = fgets($msgh)){
- echo $msg;
- echo "
"; - }
- fclose($msgh);
- }
- ?>
- 无数据库支持的简单留言板
- if(!file_exists($file)||filesize($file)<1){
- ?>
-
-
暂时还没有留言 | -
- }else{
- ?>
-
-
- show_message($file);
- ?>
-
| -
- }
- ?>
|