PHP实现留言板功能的详细代码


Posted in PHP onMarch 25, 2017

本文实例为大家分享了php留言板的实现思路,供大家参考,具体内容如下

1.创建一个存放留言信息的文件名

2.获取表单中的数据给一个变量

3.判断文件的时候存在

4.对文件执行写的操作,在这之前,注意打开文件的时候,选择对文件的访问方式,最后记得关闭文件

5.对文件执行读的操作,同样最后要记得关闭文件

<?php

//留言板的思路:1.先创建一个文件名,方便于存放写入的内容
//  2.将表单中的内容赋值给一个变量
  //3.判断文件是否存在,将用户输入的值写进变量,打开文件的是时候注意选择对文件访问的操作
  //4.读取文件的内容,关闭文件


 header("Content-Type:text/html;charset=utf8");
 $filename = "message.txt";//创建一个文件的名字

 //如果用户提交了, 就写入文件, 按一定格式写入
 if(isset($_POST['dosubmit'])) {
 //字段的分隔使用||, 行的分隔使用[n]
 $mess = "{$_POST['username']}||".time()."||{$_POST['title']}||{$_POST['content']}[n]";


 writemessage($filename, $mess);//向文件写进内容

 }

 if(file_exists($filename)) {//判断文件 是否存在
 readmessage($filename);//读取文件的函数
 }


 function writemessage($filename, $mess) {
 $fp = fopen($filename, "a");//在尾部执行写的操作,且不删除原来的文件内容
 
 fwrite($fp, $mess);//写入文件

 fclose($fp);//关闭文件
 }

 function readmessage($filename) {
 $mess = file_get_contents($filename);
 
 $mess = rtrim($mess, "[n]");

 $arrmess = explode("[n]", $mess);

 foreach($arrmess as $m) {
  list($username, $dt ,$title, $content) = explode("||", $m);

  echo "<b>{$username}</b>, ".date("Y-m-d H:i").": <i>{$title}</i>, <u>{$content}</u><br><hr><br>";
 }

 }

?>

<form action="message.php" method="post">
 用户: <input type="text" name="username" value="" /><br>
 标题:<input type="text" name="title" value="" /><br>
 内容:<textarea name="content" cols="40" rows="4"></textarea><br>
 <input type="submit" name="dosubmit" value="留言" /><br>
</form>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
用PHP写的MySQL数据库用户认证系统代码
Mar 22 PHP
php 多线程上下文中安全写文件实现代码
Dec 28 PHP
深入PHP许愿墙模块功能分析
Jun 25 PHP
下拉列表多级联动dropDownList示例代码
Jun 27 PHP
php递归函数中使用return的注意事项
Jan 17 PHP
修改ThinkPHP缓存为Memcache的方法
Jun 25 PHP
PHP实现的简单日历类
Nov 29 PHP
php中header跳转使用include包含解决参数丢失问题
May 08 PHP
深入理解PHP之源码目录结构与功能说明
Jun 01 PHP
php删除txt文件指定行及按行读取txt文档数据的方法
Jan 30 PHP
PHP实现的简单排列组合算法应用示例
Jun 20 PHP
php获取是星期几的的一些常用姿势
Dec 15 PHP
thinkPHP5.0框架整体架构总览【应用,模块,MVC,驱动,行为,命名空间等】
Mar 25 #PHP
thinkPHP5.0框架开发规范简介
Mar 25 #PHP
thinkPHP5.0框架安装教程
Mar 25 #PHP
thinkPHP5.0框架应用请求生命周期分析
Mar 25 #PHP
LAMP环境使用Composer安装Laravel的方法
Mar 25 #PHP
CI(CodeIgniter)框架视图中加载视图的方法
Mar 24 #PHP
总结的一些PHP开发中的tips(必看篇)
Mar 24 #PHP
You might like
apache+codeigniter 通过.htcaccess做动态二级域名解析
2012/07/01 PHP
Zend Framework入门教程之Zend_Session会话操作详解
2016/12/08 PHP
浅谈php://filter的妙用
2019/03/05 PHP
Laravel关系模型指定条件查询方法
2019/10/10 PHP
PHP架构及原理知识点详解
2019/12/22 PHP
基于jQuery的模仿新浪微博时间的组件
2011/10/04 Javascript
JavaScript执行效率与性能提升方案
2012/12/21 Javascript
form表单只提交数据而不进行页面跳转的解决方案
2013/09/18 Javascript
JS 实现导航栏悬停效果(续)
2013/09/24 Javascript
浅析Javascript使用include/require
2013/11/13 Javascript
JavaScript学习笔记之JS事件对象
2015/01/22 Javascript
js编写简单的计时器功能
2017/07/15 Javascript
vue.js系列中的vue-fontawesome使用
2018/02/10 Javascript
vue2.0 资源文件assets和static的区别详解
2018/04/08 Javascript
使用D3.js+Vue实现一个简单的柱形图
2018/08/05 Javascript
微信小程序实现滑动切换自定义页码的方法分析
2018/12/29 Javascript
浅探express路由和中间件的实现
2019/09/30 Javascript
JS中数组实现代码(倒序遍历数组,数组连接字符串)
2019/12/29 Javascript
小程序跳转到的H5页面再跳转回跳小程序的方法
2020/03/06 Javascript
JavaScript多种图形实现代码实例
2020/06/28 Javascript
js 将多个对象合并成一个对象 assign方法的实现
2020/09/24 Javascript
[51:30]OG vs LGD 2018国际邀请赛淘汰赛BO3 第二场 8.26
2018/08/30 DOTA
python求素数示例分享
2014/02/16 Python
Python 序列的方法总结
2016/10/18 Python
python实现银联支付和支付宝支付接入
2019/05/07 Python
Jupyter Notebook的连接密码 token查询方式
2020/04/21 Python
python tqdm实现进度条的示例代码
2020/11/10 Python
手机端用rem+scss做适配的详解
2017/11/15 HTML / CSS
关于人生的感言
2014/01/17 职场文书
入职担保书范文
2014/05/21 职场文书
化验员岗位职责
2015/02/14 职场文书
工作会议通知
2015/04/15 职场文书
烛光里的微笑观后感
2015/06/17 职场文书
公司员工奖惩制度
2015/08/04 职场文书
redis 存储对象的方法对比分析
2021/08/02 Redis
redis protocol通信协议及使用详解
2022/07/15 Redis