今天呢做了一个极其简单的留言板
真的是相当的简陋
好吧 我也不知道怎么解释
menu.php文件是一个被引用的样式文件,是为了让我们使用include引用php文件。
<h1>留言板</h1> <a href="index.php">查看留言</a> <a href="add.php">我要留言</a> <hr/>
ly.db是存储数据的文件用##隔开字段,用@@隔开留言
1 hsiadjia标题##adsdsada作者##你是傻逼内容##2018-4-21 19:25:30##127.0.0.1@@hsiadjia标题##adsdsada作者##你是傻逼内容##2018-4-21 19:25:30##127.0.0.1@@hsiadjia标题##adsdsada作者##你是傻逼内容##2018-4-21 19:25:30##127.0.0.1@@我########::1@@我要吃鸡##我自己##哈哈哈啊####::1@@我要吃鸡##我自己##哈哈哈啊##2018-04-21 16:05:16##::1@@
很长,知道是储存数据的就行 要是你能看懂那么 还要机器干嘛
这里面 末尾有多余的@@符号!!
下面会说怎么删掉
index.PHP
是浏览留言的界面
<html> <head> <title>文本式留言板</title> <meta charset="utf-8"> </head> <body> <center> <?php include 'menu.php'; ?> <h3>浏览留言</h3> <table width="900" border="1"> <tr> <th>标题</th> <th>留言者</th> <th>留言内容</th> <th>留言时间</th> <th>IP地址</th> <th>操作</th> </tr> <?php //读取留言内容 $info = rtrim(file_get_contents("ly.db"),"@"); //用@@拆分一条条留言 $list =explode("@@", $info); //判断并输出 if (!empty($list)&&count($list)>0) { foreach ($list as $k => $v) { //使用##拆分字段留言信息 $ly=explode("##",$v); echo "<tr>"; echo "<td>{$ly[0]}</td>"; echo "<td>{$ly[1]}</td>"; echo "<td>{$ly[2]}</td>"; echo "<td>{$ly[3]}</td>"; echo "<td>{$ly[4]}</td>"; echo "<td>删除 编辑</td>"; echo "</tr>"; } } ?> </table> </center> </body> </html>
rtrim后面的意思是调用时删除掉ly.db中多余的@符号啊,并不会直接在文件中删除!
关于rtrim的说明
explode 申明用@@来隔开每条留言
foreach 是用来遍历数据就不用去每个数据都调用出来看,速度比较快
add.php是添加留言的页面
<html> <head> <meta charset="utf-8"> <title>我要留言</title> </head> <body> <center> <?php include 'menu.php'; ?> <h3>添加留言</h3> <form action="action.php?a=add" method="post"> <table width="413" border="0"> <tr> <td>标题:</td> <td><input type="text" name="title"></td></tr> <tr> <td>留言者:</td> <td><input type="text" name="author"></td></tr> <tr> <td>留言内容:</td> <td><textarea name="content" cols="35" rows="6"></textarea></td> </tr> <tr> <td> </td> <td> <input type="submit" value="添加"> <input type="reset" value="重置"> </td> </tr> </table> </form>
</center> </body> </html>
action.php是将从add.php获得的信息写入ly.db文件
<html> <head> <title>留言板</title> <meta charset="utf-8"> </head> <body> <center> <?php include 'menu.php'; ?> <h3>操作留言</h3> <?php switch ($_GET['a']) { case 'add'://接受信息 $data[0]=$_POST['title']; $data[1]=$_POST['author']; $data[2]=$_POST['content']; $data[3]=date("Y-m-d H:i:s"); $data[4]=$_SERVER["REMOTE_ADDR"]; $info= implode("##", $data)."@@"; file_put_contents("ly.db", $info,FILE_APPEND); echo "留言成功!"; break; case 'update': echo "修改留言"; break; case 'del': echo "删除"; break; } ?> </center> </body> </html>
switch循环 从get['a '] 判断是add还是update还是del在执行代码
$_SERVER["REMOTE_ADDR"]获取ip地址 如果是本服务器显示的就是::1
date("Y-m-d H:i:s")获取系统时间 年月日 时分秒
implode是将从add获取的文本信息进行##拼接 转化为字符串
file_put_contents 将得到的字符串写进ly.db文件
到此完 嗯 虽然很简陋功能很简单但是能用的东西也是挺好的