前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PHP实现基本留言板功能原理与步骤详解

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

作者头像
砸漏
发布2020-11-02 16:27:39
2.2K0
发布2020-11-02 16:27:39
举报
文章被收录于专栏:恩蓝脚本

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

作为一个PHP的初学者,我试着写了一个留言板,页面有点丑,多多见谅,嘻嘻嘻 #我们写留言板需要用到数据库,所以我们先要建立三个表 user表

friend表

text表

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

##注册 zhuce.html

代码语言:javascript
复制
<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 密&nbsp;&nbsp;&nbsp;码:<input type="password" name="password" 
<div <input type="submit" name="submit" value="注册" </div 
</div 
</form 
</body 

zhuce.php

代码语言:javascript
复制
<?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 "; 
     			}
     	  }
  }
 ? 

#效果如下

##登录 denglu.html

代码语言:javascript
复制
<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 密&nbsp;&nbsp;&nbsp;码:<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

代码语言:javascript
复制
<?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 "; 
	  }
	}
? 

#效果如下

#下面需要我们写一个登录进去的页面,它显示别人给你发来的留言以及进入你要给别人留言的页面或者退出系统,在这里我将html代码嵌入php php代码如下 003.php

代码语言:javascript
复制
<?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 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 	<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'];? &nbsp;</td 
	<td  &nbsp;<?php echo $row['recever'];? &nbsp;</td 
	<td  &nbsp;<?php echo $row['comment'];? &nbsp;</td 
	<td  &nbsp;<?php echo $row['time'];? &nbsp;</td 
  <?php 
    }
    ? 
</tr 
</table 
</body 
</html 
   <?php	


}? 

#效果如下

#接下来我们就该写发布的页面以及PHP代码了 fabu.html

代码语言:javascript
复制
<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

代码语言:javascript
复制
<?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 ";
}
? 

#效果如下

#最后是退出系统

代码语言:javascript
复制
<?php
session_start();
unset($_SESSION["uesrname"]);
echo "<script alert('退出成功!');window.location='denglu.html';</script "; 
? 

#效果如下

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP+MySQL留言板开发专题》、《php缓存技术总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP错误与异常处理方法总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档