php简易留言板程序代码

 

 代码如下 复制代码

<?php
session_start();
$con=mysql_connect('localhost','root','root') or die('链接数据库失败!');
mysql_query('set names utf8');
mysql_select_db('GuestBook');

$pagesize = 10;//每一页显示多少留言记录
if(isset($_GET['page'])&&$_GET['page']!='') $page=$_GET['page'];
else $page=0;

$sql = "SELECT a . * , b.name, b.email, b.qq, c.revert_time, c.revert
  FROM post a
  LEFT JOIN revert c ON ( a.id = c.post_id ) , guest b
  WHERE a.guest_id = b.id
  ORDER BY a.id DESC";
$numRecord = mysql_num_rows(mysql_query($sql));
$totalpage = ceil($numRecord/$pagesize);

$recordSql = $sql. " LIMIT ".$page*$pagesize.",".$pagesize;
$result = mysql_query($recordSql);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>PHPiask简易留言板</title>
<style type="text/css">
<!--
body {
 margin-left: 0px;
 margin-top: 0px;
}
a:link {
 text-decoration: none;
 color: #FF6600;
}
a:visited {
 text-decoration: none;
}
a:hover {
 text-decoration: underline;
}
a:active {
 text-decoration: none;
}
.STYLE1 {
 color: #FFFFFF;
 font-weight: bold;
 font-size: 16px;
}
td{
font-size:12px;
}
.tdhx {
 font-style: italic;
 line-height: 1.5;
 text-decoration: underline;
}
-->
</style>
<script language="javascript">
function checkInput(){
 var Email = document.getElementById('email');
 var QQ = document.getElementById('qq');
 var name = document.getElementById('name');
 var post = document.getElementById('post');
 //验证用户名:不能超过10个字符(5个汉字),不能输入非法字符,不能为空
 nameValue = name.value.replace(/s+/g,"");
 var SPECIAL_STR = "~!%^&*();"?><[]{}\|,:/=+—";
 var nameflag=true;
 for(i=0;i<nameValue.lenght;i++){
  if (SPECIAL_STR.indexOf(nameValue.charAt(i)) !=-1)
  nameflag=false;
 }
 if(nameValue==''){
  alert('请填写用户名称!'); 
  return false;
 }
 if(nameValue.length>10){
  alert('用户名称最多10个字符(5个汉字)!');
  return false;
 }
 
 if(nameflag===false){
  alert('用户名称不能包含非法字符请更改!');
  return false;
 }
 //验证QQ号码
 var par =/^[1-9]d{4,12}$/;
 if(QQ.value!=''&&!par.test(QQ.value)){
  alert('请输入正确的QQ号码');
  return false;
 }
 //验证Email地址
 var emailpar = /^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$/;
 if(Email.value!=''&&!emailpar.test(Email.value)){
  alert('请输入正确的邮箱地址!');
  return false;
 }
 if(QQ.value==''&&Email.value==''){
  alert('邮箱和QQ必选其一');
  return false;  
 }
 if(post.value==""){
  alert('请输入留言内容!');
  return false;   
 }
 if(post.value.length>400){
  alert('留言内容太长!');
  return false;   
 }

}
</script>
</head>

<body>
<table width="800" border="0" align="center">

  <tr>
    <td height="80" bgcolor="#003366"><span class="STYLE1"> 简易留言板教程(<a href="http://www.phpiask.com">PHP iask</a>)</span></td>
  </tr>
  <tr>
    <td height="5" bgcolor="#efefef"></td>
  </tr>
</table>
<table width="800" border="0" align="center" bgcolor="#fefefe">
<?php
while($rs=mysql_fetch_object($result)){
?>
  <tr>
    <td class="tdhx">留言人:<?php echo $rs->name?> |Email:<?php echo $rs->email?>|QQ:<?php echo $rs->qq?>|留言时间:<?php echo date("Y-m-d H:i:s",$rs->post_time+8*3600)?></td>
  </tr>
  <?php
  if(isset($_SESSION['login'])&&$_SESSION['login']){
  ?>
    <tr>
    <td class="tdhx"><a href="revert.php?id=<?php echo $rs->id?>">回复</a> | <a href="delete.php?id=<?php echo $rs->id?>">删除</a></td>
  </tr>
  <?php
  }
  ?>
  <tr>
    <td>留言内容:<?php echo nl2br(htmlspecialchars($rs->post))?><br/>
    <font color="Red">
    回复内容:<?php echo nl2br(htmlspecialchars($rs->revert))?>[<?php if($rs->revert_time!="") echo date("Y-m-d H:i:s",$rs->revert_time+8*3600)?> ]
    </font>
   
    </td>
  </tr>
  <tr><td height="3px"  bgcolor="##FF6600"></td></tr>
<?php
}
?>
</table>
<table width="800" border="0" align="center" bgcolor="#B1C3D9">
  <tr>
    <td >
<?php
if($page>0) echo "<a href='index.php?page=".($page-1)."'>上一页|</a>" ;
if($page<$totalpage-1) echo "<a href='index.php?page=".($page+1)."'>下一页</a>" ;
?></td>
  </tr>
</table><form action="post.php" method="post" id="postForm" name="postForm">
<table width="800" border="0" align="center" cellspacing="1" bgcolor="#efefef">
 
  <tr>
    <td width="117" bgcolor="#FFFFFF">姓名:</td>
    <td width="673" bgcolor="#FFFFFF"><label>
      <input type="text" name="name" id="name" />
    </label></td>
  </tr>
  <tr>
    <td bgcolor="#FFFFFF">Email:</td>
    <td bgcolor="#FFFFFF"><label>
      <input type="text" name="email" id="email" />
    </label></td>
  </tr>
  <tr>
    <td bgcolor="#FFFFFF">QQ:</td>
    <td bgcolor="#FFFFFF"><label>
      <input type="text" name="qq" id="qq"/>
    </label></td>
  </tr>
  <tr>
    <td colspan="2" bgcolor="#FFFFFF">留言内容:</td>
  </tr>
  <tr>
    <td colspan="2" bgcolor="#FFFFFF"><label>
      <textarea name="post" id="post" cols="40" rows="5"></textarea>
    </label></td>
  </tr>
  <tr>
    <td colspan="2" bgcolor="#FFFFFF"><label>
      <input type="submit" name="Submit" value="提交" onclick="return checkInput();"/>
      &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
      <input type="reset" name="Submit2" value="重置" />
    </label><a href="login.php">管理员登录</a></td>
  </tr>
</table></form>
</body>
</html>

post.php文件

<?php
header('content-type:text/html;charset=utf-8');
//如果PHP设置的自动转义函数未开启,就转义这些值
if(!get_magic_quotes_gpc()){
 foreach ($_POST as &$items){
  $items = addslashes($items);
 }
}

$name = $_POST['name'];
$qq = $_POST['qq'];
$email = $_POST['email'];
$post = $_POST['post'];

if($name==""||strlen($name)>10){
 echo <<<tem
 <script language="javascript">
 alert('请输入正确的有户名');
 history.go(-1);
 </script>
tem;
exit();
}
if($qq==""&&$email==""){
 echo <<<tem
 <script>
 alert('Email和QQ必须输入一个!');
 history.go(-1);
 </script>
tem;
exit();
}
if($qq!=""&&(!is_numeric($qq)||$qq>9999999999||$qq<=9999)){
 echo <<<tem
 <script>
 alert("请输入正确的QQ号码");
 history.go(-1);
 </script>
tem;
exit();
}
if($email!=""&&(!ereg("^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+",$email)||strlen($email)>60)){
 echo <<<tem
 <script>
 alert("请输入正确的Email");
 history.go(-1);
 </script>
tem;
exit();
}
if(strlen($post)>400){
 echo <<<tem
 <script>
 alert("输入的留言内容太长!");
 history.go(-1);
 </script>
tem;
exit();
}

//链接数据库
$con=mysql_connect('localhost','root','root') or die('链接数据库失败!');
mysql_query('set names utf8');
mysql_select_db('GuestBook');

//把客户信息插入guest表
$insertSql="insert into guest (name,qq,email) values ('$name','$qq','$email')";
if(mysql_query($insertSql)){
 $guestid = mysql_insert_id();
}
else{
 echo $insertSql;
 echo mysql_error();
 echo "数据插入失败!";
 exit();
}

//把以上插入取得的客户id和留言信息插入到post表中
$post_time = time();
$insertPostSql = "insert into post(guest_id,post,post_time) values('$guestid','$post','$post_time')";
if(mysql_query($insertPostSql)){
 echo <<<tem
 <script>
 alert("留言成功");
 location.href="index.php";
 </script>
tem;
}
else{
 echo <<<tem
 <script>
 alert("留言失败");
 location.href="index.php";
 </script>
tem;
}
?>

下面为后台管理管理的页面 login.php登录先

 

 代码如下 复制代码
<?php
session_start();
if(isset($_POST['Submit'])){
 if(!get_magic_quotes_gpc()){
  foreach ($_POST as &$items){
   $items = addslashes($items);
  }
 }
 if($_POST['username']=='phpiask'&&md5($_POST['password'])=='6dc88b87062a5de19895e952fa290dad'){
  $_SESSION['login']=true;
  echo "<script>alert('管理员登录成功');location.href='index.php';</script>";
  exit();
 }
 else {
  echo "<script>alert('登录失败!');</script>";
 }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<table>
<tr>
<td>
<form action="login.php" method="POST" name="form1">
用户名:<input type="text" name="username" size="20"/>
密码:<input type="password" name="password" size="20">
<input type="submit" value="登录" name="Submit"/>
<input type="button" onclick="javascript:location.href='index.php'" value="放弃"/>
</form>
</td>
</tr>
</table>
</body>
</html>

删除留言的delete.php

 代码如下 复制代码

<?php
session_start();
header('content-type:text/html;charset=utf-8');
$con=mysql_connect('localhost','root','root') or die('链接数据库失败!');
mysql_query('set names utf8');
mysql_select_db('GuestBook');

if(!$_SESSION['login']){
 echo "<script>alert('权限不足!');location.href='index.php';</script>";
 exit();
}

if(isset($_GET['id'])&&$_GET['id']!=""){
 $delRevertSql="delete from revert where post_id=".$_GET['id'];
 mysql_query($delRevertSql);
 
 $delGuestSql="delete from guest where id = (select guest_id from post where id=".$_GET['id'].")";
 mysql_query($delGuestSql);
 
 $delPostSql="delete from post where id=".$_GET['id'];
 mysql_query($delPostSql);
 
 if(mysql_error()==""){
  echo "<script>alert('删除成功!');location.href='index.php';</script>";
 }
}
?>

回复留言的revert.php文件

 代码如下 复制代码

<?php
session_start();
$con=mysql_connect('localhost','root','root') or die('链接数据库失败!');
mysql_query('set names utf8');
mysql_select_db('GuestBook');

if(!$_SESSION['login']){
 echo "<script>alert('没有登录不能回复!');location.href='index.php';</script>";
 exit();
}
if($_POST['Submit']){
 if(!get_magic_quotes_gpc()){
  foreach ($_POST as $items){
   $items = addslashes($items);
  }
 }
 if(strlen($_POST['revert'])>400){
  echo "<script>alert('回复内容过长!');history.go(-1);</script>";
  exit();
 }
 $post_id = $_POST['post_id'];
 $revert = $_POST['revert'];
 $insertRevertSql = "insert into revert (post_id,revert,revert_time) value('$post_id','$revert','$time')";
 if(mysql_query($insertRevertSql)){
  echo "<script>alert('回复成功');location.href='index.php';</script>";
  exit();
 }
 else {
  echo "<script>alert('回复失败!');history.go(-1);</script>";
 }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<table>
<tr>
<td>
<form action="revert.php" method="POST" name="form1">
回复内容:<textarea name="revert" cols="30" rows="5" id="revert"></textarea>
<input type="hidden" name="post_id" value="<?php echo $_GET['id']?> "size="20">
<input type="submit" value="回 复" name="Submit"/>
<input type="button" onclick="javascript:history.go(-1);" value="放弃"/>
</form>
</td>
</tr>
</table>
</body>
</html>

时间: 2024-09-19 19:32:53

php简易留言板程序代码的相关文章

php入门之留言板程序实现代码

留言板程序需要由php +数据库来实现本教程主要是讲到了关于php mysql的留言系统的实现过程,包括增加 修改 删除及编辑工作,是对php初学才学习的好资料. 留言板的sql文件,可直接导入到mysql 代码如下  create database form; use form; CREATE TABLE `message` ( `id` tinyint(1) NOT NULL auto_increment, `user` varchar(25) NOT NULL, `title` varch

用Google App Engine写一个留言板程序(一)

Google App Engine SDK可以看作是类似.NET Framework一样的平台(这个比喻不太恰当,但你可以先这样理解),这个环境运行在Google的服务器上,Google对它的安全.性能等作了多种限制和调节.另外Google App Engine是有选择性的支持Python,你不可能用到Python的全部特性 分享一下学习Google App Engine的学习心得,整个文章包括以下部分: ·Google App Engine前言介绍·开发环境配置·起步,写个Hello, Wor

php与mysql留言板程序实现代码

关于PHP语法的那些就不说了,我就说一下连接mysql吧!  代码如下 复制代码 $conn =@mysql_connect("localhost","root","mydown") or die("数据库链接错误"); mysql_select_db("bbs", $conn); mysql_query("set names 'GBK'"); 第一句就是描述了连接数据库的语句,并且如果

一个简单的ASP+留言板程序

asp+|程序 这是我第一次写,还请大家多指教 只看了一天的CSharp就蠢蠢欲试,参考了NGWS的帮助文档,写了个留言板小程序. 本程序使用SQL SERVER7,库里只有4个字段: [GuestBook] book_id UserName Post_Time Content 因为对CSharp掌握还不好,写得有点乱,其实很多地方可以写得简单点.输出数据时可以使用不同的方法,我是用了服务器自带的控件Repeater来输出:还可以用getString的方法读取数据.值得研究的地方还有很多哦,呵呵

php留言板程序(适合php初学者)(1/4)

 代码如下 复制代码 <!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv=&qu

php无需mysql留言本程序代码(基于xml)

php中操作xml文档我们会使用SimpleXMLElement函数,我们先了解一下SimpleXMLElement函数用法 SimpleXML 函数允许您把 XML 转换为对象. 通过普通的属性选择器或数组迭代器,可以处理这个对象,就像处理任何其他对象一样. 例子 xml文档格式  代码如下 复制代码 <?php error_reporting(E_ALL ^ E_NOTICE); $op=$_GET['op']; $op || $op='list'; $filename='guestbook

jsp 用户留言板程序

   代码如下 复制代码 <table class="k123" style="MARGIN-TOP: 15px; BORDER-COLLAPSE: collapse" bordercolor="#cccccc" cellspacing="0" cellpadding="4" width="360" align="center" bgcolor="#f

php access 留言板程序

*/  代码如下 复制代码 error_reporting(0); $conn = new com("adodb.connection"); $conn->open("driver={microsoft access driver (*.mdb)}; dbq=" . realpath("db.mdb ")); $rs=new com("adodb.recordset"); $abc = $_get["abc&q

php入门教程-留言板程序

<?php if($_GET["action"]!=1) { ?> <form method="post" action="index.php?action=1"> <table border="1"> <tr> <td>MySQL主机名:</td> <td><input type="text" name="