PHP+XML 制作简单的留言本 图文教程

1. 留言显示页面

2. 发布留言,并允许上传图片

3. 输入密码登录后可以删除留言。

1. 文件目录

upfile是保存上传图片的目录。

2. 主要界面

(1)首页,显示留言页面

(2)发表留言页面

3. XML文档格式,名称为data.xml

各字段的含义不多说,各元素的值看起来有点怪,是因为我使用了base64_encode对字符串进行了编码。

4 主要页面代码

(1)add.php

此页只是纯粹的HTML代码

<form action="saveadd.php" enctype="multipart/form-data" method="post" onsubmit="return go(this)">
<table>
 <tr>
  <td>作者</td>
  <td><input type="text" size="10"></td>
 </tr>
 <tr>
  <td>标题</td>
  <td><input type="text" size="50"></td>
 </tr>
 <tr>
  <td>表情</td>
  <td>
   <select size="1" onchange="change_img();">
   <option value="smile.gif">微笑</option>
   <option value="biggrin.gif">耿直</option>
   <option value="victory.gif">胜利</option>
   <option value="tongue.gif">舌头</option>
   <option value="titter.gif">窃笑</option>
   <option value="cry.gif">哭泣</option>
   <option value="curse.gif">生气</option>
   <option value="huffy.gif">愤怒</option>
   <option value="mad.gif">疯狂</option>
   <option value="sad.gif">哀伤</option>
   <option value="shocked.gif">震惊</option>
   <option value="shy.gif">害羞</option>
   <option value="sleepy.gif">困倦</option>
   <option value="sweat.gif">汗</option>
   </select>
   <img src="https://www.jb51.net/smiles/smile.gif">
  </td>
 </tr>
 <tr>
  <td>内容</td>
  <td><textarea cols="70" rows="10"></textarea></td>
 </tr>
 <tr>
  <td>截图</td>
  <td><input type="file" size="50"></td>
 </tr>
 <tr>
  <td colspan="2"><input type="submit" value="提交"/></td>
 </tr>
</table>
</form>

(2)savadd.php

用于保存留言信息

<?php
if(!$_POST["author"] || !$_POST["content"]) 
{
 echo "<meta http-equiv=\"refresh\" content=\"2;url=index.php\">\n";
 echo "你没有填写留言姓名或内容,2秒钟返回首页";
 exit();
}else{
 $imgflag=0;   //用于判断是否需要上传图片
 function random($length)   //此函数用于生成一个随机的图片文件名(不含扩展名),以防止与现有图片重复
 {
  $hash = 'IMG-';
  $chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';
  $max = strlen($chars) - 1; 
  for($i = 0; $i < $length; $i++)    //从上面的字符串中随机找length长度个字符
  {
   $hash .= $chars[mt_rand(0, $max)];
  }
  return $hash;
 }

function fileext($filename)   //此函数用于获取上传文件的扩展名
 {
  return substr(strrchr($filename, '.'), 1);
 }
 

if($_FILES["upfile"]["name"]!=""){
  $uploaddir="https://www.jb51.net/upfile/";   //图片保存路径
  $type=array("jpg","gif","bmp","jpeg","png");   //允许上传的文件类型

if(!in_array(strtolower(fileext($_FILES['upfile']['name'])),$type))   //如果上传的文件的扩展名不符合要求
  {
   echo "<meta http-equiv=\"refresh\" content=\"2;url=index.php\">\n";
   $text=implode(",",$type);
   echo "您只能上传以下类型文件: ",$text,"<br>";
   exit();
  }
  else
  {
   $filename=explode(".",$_FILES['upfile']['name']);
   do
   {
    $filename[0]=random(10);
    $randname=implode(".",$filename);     //得到的最终随机生成的文件名(连同扩展名)
    $uploadfile=$uploaddir.$randname;
   } while(file_exists($uploadfile));

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/e6da5089d98f240bdfff5ecea1be7dbc.html