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 相关文章推荐
PHP简单系统查询模块代码打包下载
Jun 07 PHP
PHP5中虚函数的实现方法分享
Apr 20 PHP
JS 网站性能优化笔记
May 24 PHP
一个好用的PHP验证码类实例分享
Dec 27 PHP
Codeigniter操作数据库表的优化写法总结
Jun 12 PHP
php广告加载类用法实例
Sep 23 PHP
php数据访问之增删改查操作
May 09 PHP
PHP实现防盗链的方法分析
Jul 25 PHP
详解PHP如何更好的利用PHPstorm的自动提示
Aug 18 PHP
阿里云Win2016安装Apache和PHP环境图文教程
Mar 11 PHP
Laravel框架控制器的middleware中间件用法分析
Sep 30 PHP
Laravel实现ApiToken认证请求
Oct 14 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 移除数组重复元素的一点说明
2008/11/27 PHP
php中可能用来加密字符串的函数[base64_encode、urlencode、sha1]
2012/01/16 PHP
php实现aes加密类分享
2014/02/16 PHP
PHP通过插入mysql数据来实现多机互锁实例
2014/11/05 PHP
Yii隐藏URL中index.php的方法
2016/07/12 PHP
php分享朋友圈的实现代码
2019/02/18 PHP
JavaScript组合拼接字符串的效率对比测试
2014/11/06 Javascript
js实现文字跟随鼠标移动而移动的方法
2015/02/28 Javascript
javascript实现输出指定行数正方形图案的方法
2015/08/03 Javascript
javascript电商网站抢购倒计时效果实现
2015/11/19 Javascript
原生js实现图片轮播特效
2015/12/18 Javascript
javascript数组对象常用api函数小结(连接,插入,删除,反转,排序等)
2016/09/20 Javascript
bootstrap 模态框(modal)实现水平垂直居中显示
2017/01/23 Javascript
微信小程序将字符串生成二维码图片的操作方法
2018/07/17 Javascript
vue项目上传Github预览的实现示例
2018/11/06 Javascript
Vue中多元素过渡特效的解决方案
2020/02/05 Javascript
快速解决Vue、element-ui的resetFields()方法重置表单无效的问题
2020/08/12 Javascript
微信小程序调用后台service教程详解
2020/11/06 Javascript
[00:35]DOTA2上海特级锦标赛 VP战队宣传片
2016/03/04 DOTA
python实现远程控制电脑
2019/05/23 Python
Python比较配置文件的方法实例详解
2019/06/06 Python
django foreignkey(外键)的实现
2019/07/29 Python
Python lambda表达式filter、map、reduce函数用法解析
2019/09/11 Python
8段用于数据清洗Python代码(小结)
2019/10/31 Python
pytorch 自定义参数不更新方式
2020/01/06 Python
HTML5 创建canvas元素示例代码
2014/06/04 HTML / CSS
网友共享的几个面试题关于Java和Unix等方面的
2016/09/08 面试题
教师实习自我鉴定
2013/12/11 职场文书
高中班长自我鉴定
2013/12/20 职场文书
致长跑运动员加油稿
2014/02/20 职场文书
关爱残疾人标语
2014/06/25 职场文书
2014年保育员个人工作总结
2014/12/02 职场文书
《半截蜡烛》教学反思
2016/02/19 职场文书
Springboot如何使用logback实现多环境配置?
2021/06/16 Java/Android
Vite + React从零开始搭建一个开源组件库
2022/06/25 Javascript
Java获取字符串编码格式实现思路
2022/09/23 Java/Android