一个php作的文本留言本的例子(二)


Posted in PHP onOctober 09, 2006

上一次我们研究了guest.php文件.具体的问题还要求读者朋友自己深入的去实践,而且需要一些工具书来学习,如果您一点php的知识都没有,笔者奉劝您就不要想下看了,笔者没有太多的时间和篇幅去逐句探究一个php文件的用途和意义.好的,接下来我们来作edit.php这个文件.
-----------
//edit.php

<?
   if ($Submit)
   {
if ($SavePassword=="on")
{setcookie("TxtPassword","$TxtPassword",time()+30*24*3600);}
else
{setcookie("TxtPassword");}
   }
?>
<html>
<style type=text/css>
Td {FONT-SIZE: 10pt;}
TEXTAREA
{
FONT-FAMILY: "宋体";
FONT-SIZE: 10pt;
}

</style>
<head>
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>修改留言</title>
<?
require("sys.php");
function readvalue($tags,$tage)
{
global $message,$long,$reply;
$StrStart=strlen(strstr($message,$tags))-strlen($tags);//去除标记后变量所在字串的起始位置.
$StrEnd=strlen(strstr($message,$tage));
$len=$StrStart-$StrEnd;
$StrStart=$long-$StrStart;//起始字符.
$StrString=substr($message,$StrStart,$len);
return $StrString;
}

function save($record)
{
global $TxtContent,$TxtEmail,$TxtHomepage,$TxtEmail,$TxtName,$TxtFrom,$TxtReply,$REMOTE_ADDR,$guestfile;
$content=file($guestfile,"r");
$space = " ";
$time = date(Y年m月d日H小时i分);
$ip=$REMOTE_ADDR;
$TxtReply=StripSlashes($TxtReply);
$TxtContent=StripSlashes($TxtContent);
$TxtContent=htmlspecialchars($TxtContent);
$TxtContent=check_strlen_long($TxtContent);
$TxtContent=nl2br($TxtContent);
$Wcontent = "<tr><td><font color=#AB00E1>留言内容:</font><br><!--content>$TxtContent<!--endcontent> ";
$Wcontent=$Wcontent."<br><font color=#6633FF>留言人大名:</font><!--name>$TxtName<!--endname> ";
if ($TxtEmail !="")
{$Wcontent=$Wcontent."<br><font color=#9900CC>电子信箱</font><a href="mailto:$TxtEmail"><!--email>$TxtEmail<!--endemail></a>"."$space";}
if ($TxtHomepage !="http://")
{$Wcontent=$Wcontent."<font color=#9900CC>主页:</font>$TxtHompage<a href="$TxtHomepage" target=new><!--homepage>$TxtHomepage<!--endhomepage></a>";}
$Wcontent=$Wcontent."<br><font color=#0000FF>时间:$time 来自:<!--from>$TxtFrom<!--endfrom> ".$ip."</font>";
$Wcontent=ereg_replace(chr(10),"",$Wcontent);
$Wcontent=$Wcontent."<hr size=1></td></tr>";
$TxtReply=ereg_replace(chr(10),"",$TxtReply);
$WContent=$Wcontent.$TxtReply."n";
$count=count($content);
$fp=fopen($guestfile,"w");
for ($i=0;$i<$count;$i++)
{
if ($i==$record-1)
  {$content[$i]=$WContent;}
fputs($fp,$content[$i]);
}
fclose($fp);
}

$content=file($guestfile,"r");
$message=$content[$record-1];
$long=strlen($message);
$txtcontent=readvalue('<!--content>','<!--endcontent>');
$txtname=readvalue('<!--name>','<!--endname>');
$txtfrom=readvalue('<!--from>','<!--endfrom>');
$txtemail=readvalue('<!--email>','<!--endemail>');
$txthomepage=readvalue('<!--homepage>','<!--endhomepage>');
$txtcontent=strip_tags($txtcontent);
$tags="<!--reply>";
$txtreply=strstr($message,$tags);
$txtreply=ereg_replace(""",""",$txtreply);
if ($Submit)
  {
  if ($TxtPassword==$managepwd)
  {
  if ($TxtName!="" and $TxtContent!="")
    {
  save($record);
  echo "<meta http-equiv=Refresh content="1;url=guest.php">";
  exit;
    }else {$errorm="留言人姓名和内容必填!!";}
  }
  else {$errorm="密码错误,只有管理员有权修改!!";}
  }
?>
</head>

<body bgcolor="#FFFFFF" background="back.gif">
<? include('head.htm');?>
<div align="center">
  <center>
    <table border="1" width="68%" height="31" cellspacing="0" cellpadding="7" bordercolor="#E3E3E3">
     <form action="edit.php" method=post>
     <?
     if ($errorm and $Submit)
     {
        echo"<tr>";  
        echo"<td height=40 colspan=4>";
        echo"<font color=red>出错了,</font>$errorm";
        echo"</td>";
        echo"</tr>";
     }
     ?>
        <tr>  
          <td width="18%" height="37" bgcolor="#f0f0f0"><font color="#000000">留言大名</font></td>
          <td width="39%" height="37" bgcolor="#FFFFFF">  
            <input type="text" name="TxtName" size="26" value=<?echo "$txtname"?>>
             </td>
          <td width="11%" height="37" bgcolor="#f0f0f0"><font color="#000000">来自</font></td>
          <td width="32%" height="37" bgcolor="#FFFFFF">  
            <input type="text" name="TxtFrom" size="20" value=<?echo "$txtfrom"?>>
          </td>
      </tr>
      <tr>  
          <td width="18%" height="31" bgcolor="#f0f0f0"><font color="#000000">主页地址</font></td>
          <td width="39%" height="31" bgcolor="#FFFFFF">  
            <input type="text" name="TxtHomepage" size="26" value=<?echo "$txthomepage"?>>
          </td>
          <td width="11%" height="31" bgcolor="#f0f0f0"><font color="#000000">Email</font></td>
          <td width="32%" height="31" bgcolor="#FFFFFF">  
            <input type="text" name="TxtEmail" size="20" value=<?echo "$txtemail"?>>
          </td>
      </tr>
        <tr bgcolor="#FFFFFF">  
          <td height="31" colspan="4"><font color="#000000">留言内容</font></td>
      </tr>
        <tr bgcolor="#f0f0f0">  
          <td height="105" colspan="4" valign="middle" align="center">  
            <textarea rows="6" name="TxtContent" cols="50" wrap="VIRTUAL"><? echo "$txtcontent"?>
          </textarea>
        </td>
      </tr>
        <tr bgcolor="#FFFFFF">  
          <td height="40" colspan="4" valign="middle" align="center"> <font color="#000000">修改密码</font>  
            <input type="password" name="TxtPassword" size="10" value=<?echo "$TxtPassword"?>>
            <font color="#000000">是否保存密码</font>  
            <input type="checkbox" name="SavePassword" value="on" checked>
          <input type=hidden name=record value=<? echo "$record"?>>

          <input type="submit" value="我要修改了" name="Submit">
        </td>
      </tr>
      <? echo "$txtreply"?>
       <input type=hidden name=TxtReply value="<? echo "$txtreply" ?>">
      </form>
    </table>
  </center>
</div>
<?include('bottom.htm');?>
</body>

</html>
----------
该注明的地方我已作了诠释.php可以嵌入html代码中,这样写起代码很惬意.
待续...

PHP 相关文章推荐
php中文件上传的安全问题
Oct 09 PHP
IIS php环境配置PHP5 MySQL5 ZendOptimizer phpmyadmin安装与配置
Nov 18 PHP
php 深入理解strtotime函数的使用详解
May 23 PHP
解析linux下安装memcacheq(mcq)全过程笔记
Jun 27 PHP
详解PHP的Yii框架中的Controller控制器
Mar 29 PHP
php curl中gzip的压缩性能测试实例分析
Nov 08 PHP
thinkphp5.0自定义验证规则使用方法
Nov 16 PHP
Docker搭建自己的PHP开发环境
Feb 24 PHP
Yii2语言国际化自动配置详解
Aug 22 PHP
Ubuntu 16.04中Laravel5.4升级到5.6的步骤
Dec 07 PHP
解决laravel groupBy 对查询结果进行分组出现的问题
Oct 09 PHP
tp5.1 框架数据库-数据集操作实例分析
May 26 PHP
一个php作的文本留言本的例子(三)
Oct 09 #PHP
一个php作的文本留言本的例子(四)
Oct 09 #PHP
一个php作的文本留言本的例子(五)
Oct 09 #PHP
一个php作的文本留言本的例子(一)
Oct 09 #PHP
PHP的类 功能齐全的发送邮件类
Oct 09 #PHP
以文本方式上传二进制文件的PHP程序
Oct 09 #PHP
用户的详细注册和判断
Oct 09 #PHP
You might like
php 调用远程url的六种方法小结
2009/11/02 PHP
PHP生成自适应大小的缩略图类及使用方法分享
2014/05/06 PHP
Linux中为php配置伪静态
2014/12/17 PHP
PHP二维数组去重实例分析
2016/11/18 PHP
PHP排序算法之归并排序(Merging Sort)实例详解
2018/04/21 PHP
Jquery优化效率 提升性能解决方案
2010/09/06 Javascript
javascript 弹出窗口中是否显示地址栏的实现代码
2011/04/14 Javascript
如何让页面在打开时自动刷新一次让图片全部显示
2012/12/17 Javascript
JS按回车键实现登录的方法
2014/08/25 Javascript
在JavaScript的AngularJS库中进行单元测试的方法
2015/06/23 Javascript
纯css实现窗户玻璃雨滴逼真效果
2015/08/23 Javascript
JS实现的简单鼠标跟随DiV层效果完整实例
2015/10/31 Javascript
javascript时间戳和日期字符串相互转换代码(超简单)
2016/06/22 Javascript
Three.js的使用及绘制基础3D图形详解
2017/04/27 Javascript
关于Mac下安装nodejs、npm和cnpm的教程
2018/04/11 NodeJs
JS/HTML5游戏常用算法之碰撞检测 像素检测算法实例详解
2018/12/12 Javascript
JavaScript惰性求值的一种实现方法示例
2019/01/11 Javascript
[01:39](回顾)各路豪强针锋相对,几经鏖战四强产生
2014/07/01 DOTA
tensorflow入门之训练简单的神经网络方法
2018/02/26 Python
深入了解Django View(视图系统)
2019/07/23 Python
对Keras中predict()方法和predict_classes()方法的区别说明
2020/06/09 Python
详解css3 object-fit属性
2018/07/27 HTML / CSS
Canvas 文字碰撞检测并抽稀的方法
2019/05/27 HTML / CSS
HTML5适合的情人节礼物有纪念日期功能
2021/01/25 HTML / CSS
日本最大的眼镜购物网站:Oh My Glasses
2016/11/13 全球购物
BRASTY捷克:购买香水、化妆品、手袋和手表
2017/07/12 全球购物
蔻驰英国官网:COACH英国
2020/07/19 全球购物
Happy Plugs官网:瑞典无线耳机品牌
2020/07/16 全球购物
国际商务专业学生个人的自我评价
2013/09/28 职场文书
轻金属冶金专业毕业生自荐信
2013/11/02 职场文书
白酒市场营销方案
2014/02/25 职场文书
2014年党员自我评价材料
2014/09/22 职场文书
团支部书记竞选稿
2015/11/21 职场文书
机关单位2016年创先争优活动总结
2016/04/05 职场文书
Python 如何实现文件自动去重
2021/06/02 Python
前端实现滑动按钮AJAX与后端交互的示例代码
2022/02/24 Javascript