>  기사  >  php教程  >  用PHP打造无数据库的留言本

用PHP打造无数据库的留言本

WBOY
WBOY원래의
2016-06-21 09:02:241010검색

 

本文介绍一种通过读取文本文件的方法实现留言本基本功能,在PHP4+Apache For Win98 下调试通过。从这个程序中我们可以体会到PHP与HTML语言交互嵌入的灵活编程风格。

  首先,进入留言本页面,我们需要用

窗体顶端

表单提交留言者的信息,并用PHP处理信息,可以在default.php中实现这两项功能,具有详细注释的源代码如下:

  # default.php#
  php
  //条件语句用来判断表单是否提交,内容是否填写完整;
  if ( sent=="sent"){
  if ( name=="") {echo "请输入用户名";}
  else if ( email=="") {echo "请输入email";}
  else if ( note=="") {echo "请输入留言";}
  else { fp=fopen("text.txt","a+"); //可读写方式打开text.txt文件用于存储留言,若不存在则新建一个;
  t = date(Y年m月d日h时m分s秒);//得到当前时间;
  main = "网上大名:href
=\"mailto:$email\"> name:( t)br
>
留言内容: href=\"text.txt\"> note br>


";
  write=fwrite( fp, main); //写入文件;
  fclose( fp);
  echo "谢谢你的留言=>";
  echo "href=\"body.php\">查看留言|href=\"index.htm\">返回首页";
}
}
?>

我的留言板



请输入你的姓名:br>
br>
请输入你的Email:br>
br>
请输入你的留言:br>
textarea name="note" cols="30" rows="5">textarea>






  其中,
标签域中的代码是标准的HTML语言,用于输入访问者的信息,提交后的信息送到当前页面(default.php),注意在
中有一行:

  

  该行内容并不显示出来,只是完成给变量 sent赋一个值“sent”,表单未提交时,变量 sent值为空,php … ?>中条件判断 sent=="sent"不成立,PHP程序不进行任何操作,只有提交后才执行下面的PHP程序。完成后,可以通过“查看留言”链接查看留言,这就是我们下面给出的body.php程式:

  # body.php#

朋友的留言:


php
  f = fopen("text.txt","a+"); //读写方式打开文件,若不存在则新建
  msg = fread( f,filesize("text.txt")); //读取文件
fclose( f); //关闭文件
print "
msg
"; //输出留言
echo "
href=\"default.php\">返回留言本|";
echo "href=\"index.htm\">返回首页";
?>

  相信大家能很容易地读懂这段代码。在上面的两段程序中,我们省略了HTML的其他标签,其实,大家可以将以上两段代码放在标签域中,对页面进行装饰,PHP界定符间的代码还可以放在 … 区域之外。可见,PHP同HTML的交互嵌入是相当灵活的,请注意在PHP中嵌入HTML语句的格式。

  本例中,文件default.phpbody.php和存放留言的text.txt(见于body.php中)放在服务器同一目录下,读者可根据需要进行调整。有兴趣的话,在此例的基础上还可以添加其它功能,如对留言者输入的信息内容或格式进行审查(用正则表达式)和留言本的管理、留言者的信息获取等。

窗体底端

 



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.