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框架的性能
Jan 10 PHP
PHP 5.0对象模型深度探索之属性和方法
Mar 27 PHP
IIS6+PHP5+MySQL5+Zend Optimizer+phpMyAdmin安装配置图文教程 2009年
Jun 08 PHP
ThinkPHP php 框架学习笔记
Oct 30 PHP
php文章内容分页并生成相应的htm静态页面代码
Jun 07 PHP
PHP中使用数组实现堆栈数据结构的代码
Feb 05 PHP
php打造属于自己的MVC框架
Mar 07 PHP
php文件操作实例代码
May 10 PHP
基于HBase Thrift接口的一些使用问题及相关注意事项的详解
Jun 03 PHP
基于php中使用excel的简单介绍
Aug 02 PHP
详谈php中 strtr 和 str_replace 的效率问题
May 14 PHP
PHP获取真实IP及IP模拟方法解析
Nov 24 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高性能日志系统 seaslog 的安装与使用方法分析
Feb 29 #PHP
You might like
关于PHP中Object对象的笔记分享
2011/06/28 PHP
php5.5中类级别的常量使用介绍
2013/10/02 PHP
javascript 浏览器检测代码精简版
2010/03/04 Javascript
javascript权威指南 学习笔记之null和undefined
2011/09/25 Javascript
jquery图片放大功能简单实现
2013/08/01 Javascript
js获取对象为null的解决方法
2013/11/21 Javascript
详解js闭包
2014/09/02 Javascript
jQuery实现左侧导航模块的显示与隐藏效果
2016/07/04 Javascript
JS控制页面跳转时未请求要跳转的地址怎么回事
2016/10/14 Javascript
原生js实现淘宝购物车功能
2020/06/23 Javascript
详解Vue 动态添加模板的几种方法
2017/04/25 Javascript
深入浅析AngularJS中的一次性数据绑定 (bindonce)
2017/05/11 Javascript
webpack打包后直接访问页面图片路径错误的解决方法
2017/06/17 Javascript
vue使用axios跨域请求数据问题详解
2017/10/18 Javascript
vue中的mvvm模式讲解
2019/01/31 Javascript
bootstrap-table+treegrid实现树形表格
2019/07/26 Javascript
vue多个元素的样式选择器问题
2019/11/29 Javascript
JavaScript面向对象核心知识与概念归纳整理
2020/05/09 Javascript
小程序中的箭头函数的具体使用
2020/06/19 Javascript
Python中__call__用法实例
2014/08/29 Python
python网络编程实例简析
2014/09/26 Python
零基础写python爬虫之urllib2使用指南
2014/11/05 Python
Python的Flask框架中使用Flask-Migrate扩展迁移数据库的教程
2016/06/14 Python
python sklearn包——混淆矩阵、分类报告等自动生成方式
2020/02/28 Python
python全栈开发语法总结
2020/11/22 Python
BSTN意大利:德国街头和运动文化高品质商店
2020/12/22 全球购物
WEB控件可以激发服务端事件,请谈谈服务端事件是怎么发生并解释其原理?自动传回是什么?为什么要使用自动传回?
2012/02/21 面试题
医科大学生的自我评价
2013/12/04 职场文书
学习心得体会
2014/01/01 职场文书
北京大学自荐信范文
2014/01/28 职场文书
乡镇三项教育实施方案
2014/03/30 职场文书
学生请假条格式
2014/04/11 职场文书
诚信考试倡议书
2014/04/15 职场文书
致共产党员倡议书
2014/04/16 职场文书
2015年乡镇民政工作总结
2015/05/13 职场文书
试了下Golang实现try catch的方法
2021/07/01 Golang