PHP实现基本留言板功能原理与步骤详解


Posted in PHP onMarch 26, 2020

本文实例讲述了PHP实现基本留言板功能的方法。分享给大家供大家参考,具体如下:

作为一个PHP的初学者,我试着写了一个留言板,页面有点丑,多多见谅,嘻嘻嘻
#我们写留言板需要用到数据库,所以我们先要建立三个表
user表
PHP实现基本留言板功能原理与步骤详解
friend表
PHP实现基本留言板功能原理与步骤详解
text表
PHP实现基本留言板功能原理与步骤详解

#首先需要写一个注册与登录

##注册
zhuce.html

<meta charset="utf-8">
<title>zhuce</title>
</head>
<body>
<form method="POST" action="zhuce.php">
<div style="margin-left: 500px;margin-top:200px;height: 250px;width: 250px">
<h1>用户注册页面</h1>
用户名:<input type="text" name="username">
<div>密   码:<input type="password" name="password">
<div><input type="submit" name="submit" value="注册"></div>
</div>
</form>
</body>

zhuce.php

<?php
session_start();
header("Content-type: text/html; charset=utf-8"); //处理数据库用户名乱码
$user=$_POST["username"];
$pwd=$_POST["password"];
if($user==""||$pwd=="")
	 {
   	echo "<script>alert('请确认信息完整性!'); history.go(-1);</script>"; 
	 }
else 
  	{
	 		
 			$link=mysqli_connect("localhost","root","","liuyan");//连接数据库
	 		mysqli_query($link,"set names utf8"); 
	 		$sql="select username from user where username='$_POST[username]'";
    	$result=mysqli_query($link,$sql);//执行sql语句
     	$num=mysqli_num_rows($result);//统计执行结果影响的行数
     	if($num)//如果存在该用户
     		{
     			echo "<script>alert('用户名已存在!'); history.go(-1);</script>"; 
    		}
      else//注册新用户
    		 { 
     			$sql_insert="insert into user (username,password)values('$_POST[username]','$_POST[password]')";
     			$res_insert=mysqli_query($link,$sql_insert);
     			if($res_insert)
     			{
     				echo "<script>alert('注册成功!');window.location='denglu.html';</script>"; 
     			}
     			else
     			{
     				echo "<script>alert('系统繁忙请重试!'); history.go(-1);</script>"; 
     			}
     	  }
  }
 ?>

#效果如下
PHP实现基本留言板功能原理与步骤详解

##登录
denglu.html

<head>
<meta charset="utf-8">
<title>denglu</title>
</head>
<body>
<form method="POST" action="denglu.php">
<div style="margin-left: 500px;margin-top:200px;height: 250px;width: 250px">
<h1>用户登录页面</h1>
用户名:<input type="text" name="username">
<div>密   码:<input type="password" name="password"></div><br/>
<input type="submit" name="submit" value="登录"> 
<a href="zhuce.html" rel="external nofollow" >注册</a> 
 </div>
</form>
</body>

denglu.php

<?php
  session_start();
  	$user=$_POST["username"];
	$_SESSION["uesrname"]=$user;//session超全局变量
	$pwd=$_POST["password"];//获取密码
	if($user=""||$pwd="")
	{
   echo "<script>alert('请输入用户名或密码!'); history.go(-1);</script>"; 
	}
	else
	{
		$link=mysqli_connect("localhost","root","","liuyan");//连接数据库
    mysqli_query($link,"set names utf8"); 
    $sql = "select username,password from user where username = '$_POST[username]' and password = '$_POST[password]'"; 
		$result=mysqli_query($link,$sql);//执行sql语句
		$num=mysqli_num_rows($result);//统计影响结果行数,作为判断条件
		if($num)
		{
			echo "<script>alert('登录成功!');window.location='003.php';</script>";//登录成功页面跳转 
		}
		else
		{
			echo "<script>alert('用户名或密码不正确!');history.go(-1);</script>"; 
	  }
	}
?>

#效果如下
PHP实现基本留言板功能原理与步骤详解
#下面需要我们写一个登录进去的页面,它显示别人给你发来的留言以及进入你要给别人留言的页面或者退出系统,在这里我将html代码嵌入php
php代码如下
003.php

<?php
session_start();
global $user;//定义$user
global $user1;
$_SESSION["username"]=$user;
$username=$_SESSION["uesrname"];
$user1=implode("",$_SESSION);//将session中的数组变为字符串元素
$link=mysqli_connect("localhost","root","","liuyan");//连接数据库
mysqli_query($link,"set names utf8"); 
$sql="select * from text where recever='{$username}'";
$result=mysqli_query($link,$sql);//执行语句
if($num=mysqli_num_rows($result))//将HTML嵌入PHP中,实现从数据库中获得留言信息
{?>
	<!DOCTYPE html>
<html>
<head>
 <meta charset="utf-8">
</head>
 <body>
 <div>
 	<a href="fabu.html" rel="external nofollow" >发布信息</a>      
 	<a href="tuichu.php" rel="external nofollow" >退出系统</a></h3></div>
 	<br/><br/>
 	
 	<h2>留言信息:</h2>
 	<table cellpadding="0" cellspacing="0" border="1" width="60%">
<tr bgcolor="#8BBCC7">

	<td>发送人</td>
	<td>接收人</td>
	<td>发送时间</td>
	<td>信息内容</td>
	<?php echo '<pre>';
	while($row=mysqli_fetch_array($result,MYSQLI_ASSOC))
	{?>
		<tr bgcolor="#FFFFFF">
	<td ><?php echo $row['sender'];?> </td>
	<td > <?php echo $row['recever'];?> </td>
	<td > <?php echo $row['comment'];?> </td>
	<td > <?php echo $row['time'];?> </td>
  <?php 
    }
    ?>
</tr>
</table>
</body>
</html>
   <?php	


}?>

#效果如下
PHP实现基本留言板功能原理与步骤详解
#接下来我们就该写发布的页面以及PHP代码了
fabu.html

<head>
	<meta charset="utf-8">
	<title>fabu</title>
</head>
<body>
 <form method="POST" action="fabu.php">
<h1>发布信息<h1>
<a href="003.php" rel="external nofollow" >主页面</a>
<div>接收人:<input type="text" name="recever">
</select>
</div>
</select>
</div>
<br/>
<div>
	信息内容:<textarea input type="text" name="neirong"></textarea>
</div><br/>
<input type="submit" value="发送">
</form>

fabu.php

<?php
session_start();
header("Content-type: text/html; charset=utf-8");
global $user;
$re=$_POST["recever"];//获取recever
$comment=$_POST["neirong"];//获取留言
@date_default_timezone_set(PRC);//将数组变为字符串函数
$time=date("Y-m-d G:i:s");//获取时间,G为24小时制
$_SESSION["username"]=$user;//开启session
$user1=implode("",$_SESSION);//将数组转为字符串
$link=mysqli_connect("localhost","root","","liuyan");//连接数据库
mysqli_query($link,"set names utf8"); 
$sql="insert into text(sender,recever,comment,time) values('$user1','$re','$comment','$time')";
$result=mysqli_query($link,$sql);//执行语句
$sql1="insert into friend(me,friend) values('$user1','$re')";//将me,friend存入数据库
$result=mysqli_query($link,$sql1);//执行语句
if($recever=""||$comment="")
{
	echo "<script>alert('发布失败!');window.location='fabu.html';</script>";
}
else
{
	echo "<script>alert('发布成功!');window.location='fabu.html';</script>";
}
?>

#效果如下
PHP实现基本留言板功能原理与步骤详解
#最后是退出系统

<?php
session_start();
unset($_SESSION["uesrname"]);
echo "<script>alert('退出成功!');window.location='denglu.html';</script>"; 
?>

#效果如下
PHP实现基本留言板功能原理与步骤详解

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
如何跨站抓取别的站点的页面的补充
Oct 09 PHP
使PHP自定义函数返回多个值
Nov 26 PHP
PHP面向对象分析设计的61条军规小结
Jul 17 PHP
php visitFile()遍历指定文件夹函数
Aug 21 PHP
30 个很棒的PHP开源CMS内容管理系统小结
Oct 14 PHP
php中session使用示例
Mar 29 PHP
使用ThinkPHP+Uploadify实现图片上传功能
Jun 26 PHP
PHP与MYSQL中UTF8 中文排序示例代码
Oct 23 PHP
制作安全性高的PHP网站的几个实用要点
Dec 30 PHP
php使用GD创建保持宽高比缩略图的方法
Apr 17 PHP
PHP表单提交后引号前自动加反斜杠的原因及三种办法关闭php魔术引号
Sep 30 PHP
基于Swoole实现PHP与websocket聊天室
Aug 03 PHP
php设计模式之策略模式实例分析【星际争霸游戏案例】
Mar 26 #PHP
php设计模式之状态模式实例分析【星际争霸游戏案例】
Mar 26 #PHP
php设计模式之正面模式实例分析【星际争霸游戏案例】
Mar 24 #PHP
php设计模式之模板模式实例分析【星际争霸游戏案例】
Mar 24 #PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
Mar 24 #PHP
php设计模式之原型模式分析【星际争霸游戏案例】
Mar 23 #PHP
php设计模式之代理模式分析【星际争霸游戏案例】
Mar 23 #PHP
You might like
php修改指定文件后缀的方法
2014/09/11 PHP
PHP实现链式操作的核心思想
2015/06/23 PHP
jquery插件制作 图片走廊 gallery
2012/08/17 Javascript
Flexigrid在IE下不显示数据的处理的解决方法
2013/10/24 Javascript
jQuery点击自身以外地方关闭弹出层的简单实例
2013/12/24 Javascript
jquery 取子节点及当前节点属性值
2014/07/25 Javascript
使用JavaScript刷新网页的方法
2015/06/04 Javascript
JavaScript对象数组排序函数及六个用法
2015/12/23 Javascript
JS获取时间的相关函数及时间戳与时间日期之间的转换
2016/02/04 Javascript
微信小程序去哪里找 小程序到底如何使用(附小程序名单)
2017/01/09 Javascript
动态加载、移除js/css文件的示例代码
2018/03/20 Javascript
iview Upload组件多个文件上传的示例代码
2018/09/30 Javascript
小程序实现抽奖动画
2020/04/16 Javascript
vue.js引入外部CSS样式和外部JS文件的方法
2019/01/06 Javascript
JS基于开关思想实现的数组去重功能【案例】
2019/02/18 Javascript
package.json配置文件构成详解
2019/08/27 Javascript
浅谈v-for 和 v-if 并用时筛选条件方法
2019/11/07 Javascript
JavaScript中EventBus实现对象之间通信
2020/10/18 Javascript
python实现的解析crontab配置文件代码
2014/06/30 Python
Python实现将数据框数据写入mongodb及mysql数据库的方法
2018/04/02 Python
Pyqt实现无边框窗口拖动以及窗口大小改变
2018/04/19 Python
Python定时任务sched模块用法示例
2018/07/16 Python
python3对接mysql数据库实例详解
2019/04/30 Python
Python 使用 prettytable 库打印表格美化输出功能
2019/12/26 Python
Django接收照片储存文件的实例代码
2020/03/07 Python
Html5之webcoekt播放JPEG图片流
2020/09/22 HTML / CSS
荷兰牛仔裤网上商店:Jeans Centre
2018/04/03 全球购物
美国香薰蜡烛品牌:PADDYWAX
2018/10/06 全球购物
香港网上花店:FlowerAdvisor香港
2019/05/30 全球购物
事务机电主管工作职责
2014/02/25 职场文书
2015年企业新年寄语
2014/12/08 职场文书
新党员入党决心书
2015/09/22 职场文书
python基于OpenCV模板匹配识别图片中的数字
2021/03/31 Python
浅谈golang package中init方法的多处定义及运行顺序问题
2021/05/06 Golang
JVM上高性能数据格式库包Apache Arrow入门和架构详解(Gkatziouras)
2021/05/26 Servers
CSS布局之浮动(float)和定位(position)属性的区别
2021/09/25 HTML / CSS