php+dbfile开发小型留言本

2016-02-19 12:14 1 1 收藏

下面是个简单易学的php+dbfile开发小型留言本教程,图老师小编详细图解介绍包你轻松学会,喜欢的朋友赶紧get起来吧!

【 tulaoshi.com - Web开发 】


最近一直在用php+dbfile开发blog,开发过程中学到了不少东西,于是就试着写了一个小留言本。
这个留言本采用php+dbfile,不需要使用数据库,可以放在blog中使用,比如http://www.customyze.com,这个blog中的Tag Board就是这个留言本。

整个留言本需要四个文件,分别是:board.php、index.php、config.php、admin.php。

board.php用来存储数据,可以先在里面添加了一条留言纪录。代码拷贝框
?php$Board=array(array(1081410332,'测试','测试留言本','http://www.piscdong.com'));?
[Ctrl+A 全部选择 然后拷贝]

index.php是留言显示和提交页面。代码拷贝框
?phprequire_once('board.php');function htmlencode($content){$content=htmlspecialchars($content);$content=preg_replace("/r/i","br /",$content);return $content;}if($HTTP_SERVER_VARS['REQUEST_METHOD']=='POST'){$configpath_parts1 = pathinfo($SCRIPT_FILENAME);$time=time();$name=$HTTP_POST_VARS['name'];$url=(preg_match("/^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$/i",$HTTP_POST_VARS['url'])
$HTTP_POST_VARS['url']=='')?$HTTP_POST_VARS['url']:'http://'.htmlspecialchars(preg_replace("/https?:///i",'',$HTTP_POST_VARS['url']),ENT_QUOTES);$info=htmlencode($HTTP_POST_VARS['info']);if($name!='' && $info!=''){$Board[]=array($time,$name,$info,$url);}for($i=0;$icount($Board);$i++){$bd=current($Board);$s[]="tarray(".$bd[0].",'".$bd[1]."','".$bd[2]."','".$bd[3]."')";next($Board);}$content="?phpn$Board=array(n".join($s,",n")."n);n?";$filename=$configpath_parts1['dirname'].'/'.'board.php';if(is_writable($filename)
!file_exists($filename)){if(!$handle=fopen($filename,'w')){return false;}if(!fwrite($handle,$content)){return false;}fclose($handle);}else{return false;}header('Location:.');}else{?!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"html xmlns="http://www.w3.org/1999/xhtml"headtitle留言本/titlemeta http-equiv="Content-Type" content="text/html; charset=gb2312" //headbodyform method="post" name="form1" action=""table border="0" cellspacing="5" cellpadding="0" align="center"trtddiv style="overflow:auto;height:250px;border:1px dotted #999999;padding:5px;word-wrap:break-word;width:400px;"?php end($Board);for($i=0;$icount($Board);$i++){$bd=current($Board);$s[]='strong'.($bd[3]!=''?'a href="':'').(preg_match("/^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$/i",$bd[3])?'mailto:':'').$bd[3].(($bd[3]!='' && !preg_match("/^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$/i",$bd[3]))?'" target="_blank':'').($bd[3]!=''?'"':'').$bd[1].($bd[3]!=''?'/a':'').':/strong '.$bd[2].'br/em-'.date("G:i, M j, Y",$bd[0]).'/em';prev($Board);}echo join($s,'br/br/');?/div/td/trtrtd align="center"名称:input type="text" name="name"/ URL/Email:input type="text" name="url"/br/textarea name="info" cols="40" rows="8"/textareabr/input type="submit" value="发布"//td/tr/table/form/body/html?php } ?
[Ctrl+A 全部选择 然后拷贝]

config.php中存放的是管理留言本的密码,把密码放在单独一个文件中方便修改。代码拷贝框
?php $password='123456'; ?
[Ctrl+A 全部选择 然后拷贝]

admin.php是管理页面,功能很简单,只能删除留言。在删除时需要输入管理密码,管理密码存放在config.php中。代码拷贝框
?phprequire_once('board.php');require_once('config.php');if(isset($HTTP_POST_VARS['id']) && $HTTP_POST_VARS['id']!='' && addslashes($HTTP_POST_VARS['password'])==$password){if(count($Board)1){unset($Board[intval($HTTP_POST_VARS['id'])]);for($i=0;$icount($Board);$i++){$bd=current($Board);$s[]="tarray(".$bd[0].",'".$bd[1]."','".$bd[2]."','".$bd[3]."')";next($Board);}$content="?phpn$Board=array(n".join($s,",n")."n);n?";$configpath_parts1 = pathinfo($SCRIPT_FILENAME);$filename=$configpath_parts1['dirname'].'/'.'board.php';if(is_writable($filename)
!file_exists($filename)){if(!$handle=fopen($filename,'w')){return false;}if(!fwrite($handle,$content)){return false;}fclose($handle);}else{return false;}}header('Location:admin.php');}else{?!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"html xmlns="http://www.w3.org/1999/xhtml"headtitle管理留言本/titlemeta http-equiv="Content-Type" content="text/html; charset=gb2312" //headbodytable width="500" border="0" cellspacing="1" cellpadding="5" align="center" bgcolor="#999999"?php for($i=0;$icount($Board);$i++){$bd=current($Board);$s[]='trtd bgcolor="#'.($i%2!=0?'ececec':'ffffff').'"strong'.($bd[3]!=''?'a href="':'').(preg_match("/^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$/i",$bd[3])?'mailto:':'').$bd[3].(($bd[3]!='' && !preg_match("/^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$/i",$bd[3]))?'" target="_blank':'').($bd[3]!=''?'"':'').$bd[1].($bd[3]!=''?'/a':'').':/strong '.$bd[2].'br/em-'.date("G:i, M j, Y",$bd[0]).'/em/td'.(count($Board)1?'td bgcolor="#'.($i%2!=0?'ececec':'ffffff').'" align="center"form method="post" action=""input type="submit" value="删除" /input type="hidden" name="id" value="'.$i.'" /input type="password" name="password" //form/td':'').'/tr';next($Board);}echo join($s,'');?/table/body/html?php } ?
[Ctrl+A 全部选择 然后拷贝]

这个留言本还很简单,功能上还不健全,比如没有分页等,还可以继续完善。:-)

来源:https://www.tulaoshi.com/n/20160219/1600266.html

延伸阅读
标签: Web开发
一、读者指引    读者指引帮助你掌握本文的梗概。以免你看了大半才明白这编文章不适合你,给你造成视觉污染。    如果你正在用ASP+XML写一些程序,或者你正在学XML那就值得一看。    阅读本文须具备的知识,对ASP有基本的了解,对XML和DOM有基本了解,如果你不了解那么你通过学习本文基本上能够撑握ASP+X...
建立资料表: Step1 首先开启phpmyadmin,进入wordpress资料库中,并新增一个wp_gbook的资料表与栏位数目8。 Step2 接着依照下方设定栏位的名称与型态,并且把gid设为UNSIGNED与auto_increment,表示该栏不可重覆,同时自动产生。 Step3 按下执行成功结果如下所示。 建立PHP站台: Step4 进入blog目录,新增一个资料夹为gboo...
标签: Java JAVA基础
      <!--add_message.jsp-- <%@ page import="java.sql.*" % <HTML <HEAD <TITLEadd message into table </TITLE </HEAD <BODY <% String name=request.getParameter("name"); String mail=request.getParameter("mail"); String title=request.getParameter("title"); String c...
标签: PHP
  现在我们来讲一下reply.php的代码: --------------------------------- //reply.php <?   function check_strlen_long($txt) { $len=strlen($txt); $count=0; for ($i=0;$i<$len;$i++) { if (ord($txt[$i])<128)   { $count=$count+1;}   if (ord($txt[$i])==10 or ord($tx...
标签: PHP
  这一节我将为大家讲述关于guest.txt的建立方法和上传的有关事项. ------- //guest.txt <tr<td<font color=#AB00E1留言内容:</font<br<!--contentzihanonline<!--endcontent <br<font color=#6633FF留言人大名:</font<!--namezihanonline<!--endname <font color=#9900CC主页:</font<a...

经验教程

120

收藏

59
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部