PHP實現(xiàn)基本留言板功能原理與步驟詳解
本文實例講述了PHP實現(xiàn)基本留言板功能的方法。分享給大家供大家參考,具體如下:
作為一個PHP的初學(xué)者,我試著寫了一個留言板,頁面有點丑,多多見諒,嘻嘻嘻
#我們寫留言板需要用到數(shù)據(jù)庫,所以我們先要建立三個表
user表
friend表
text表
#首先需要寫一個注冊與登錄
##注冊
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"); //處理數(shù)據(jù)庫用戶名亂碼 $user=$_POST["username"]; $pwd=$_POST["password"]; if($user==""||$pwd=="") { echo "<script>alert('請確認(rèn)信息完整性!'); history.go(-1);</script>"; } else { $link=mysqli_connect("localhost","root","","liuyan");//連接數(shù)據(jù)庫 mysqli_query($link,"set names utf8"); $sql="select username from user where username='$_POST[username]'"; $result=mysqli_query($link,$sql);//執(zhí)行sql語句 $num=mysqli_num_rows($result);//統(tǒng)計執(zhí)行結(jié)果影響的行數(shù) 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('系統(tǒng)繁忙請重試!'); history.go(-1);</script>"; } } } ?>
#效果如下
##登錄
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");//連接數(shù)據(jù)庫 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);//執(zhí)行sql語句 $num=mysqli_num_rows($result);//統(tǒng)計影響結(jié)果行數(shù),作為判斷條件 if($num) { echo "<script>alert('登錄成功!');window.location='003.php';</script>";//登錄成功頁面跳轉(zhuǎn) } else { echo "<script>alert('用戶名或密碼不正確!');history.go(-1);</script>"; } } ?>
#效果如下
#下面需要我們寫一個登錄進(jìn)去的頁面,它顯示別人給你發(fā)來的留言以及進(jìn)入你要給別人留言的頁面或者退出系統(tǒng),在這里我將html代碼嵌入php
php代碼如下
003.php
<?php session_start(); global $user;//定義$user global $user1; $_SESSION["username"]=$user; $username=$_SESSION["uesrname"]; $user1=implode("",$_SESSION);//將session中的數(shù)組變?yōu)樽址? $link=mysqli_connect("localhost","root","","liuyan");//連接數(shù)據(jù)庫 mysqli_query($link,"set names utf8"); $sql="select * from text where recever='{$username}'"; $result=mysqli_query($link,$sql);//執(zhí)行語句 if($num=mysqli_num_rows($result))//將HTML嵌入PHP中,實現(xiàn)從數(shù)據(jù)庫中獲得留言信息 {?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> </head> <body> <div> <a href="fabu.html" rel="external nofollow" >發(fā)布信息</a> <a href="tuichu.php" rel="external nofollow" >退出系統(tǒng)</a></h3></div> <br/><br/> <h2>留言信息:</h2> <table cellpadding="0" cellspacing="0" border="1" width="60%"> <tr bgcolor="#8BBCC7"> <td>發(fā)送人</td> <td>接收人</td> <td>發(fā)送時間</td> <td>信息內(nèi)容</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 }?>
#效果如下
#接下來我們就該寫發(fā)布的頁面以及PHP代碼了
fabu.html
<head> <meta charset="utf-8"> <title>fabu</title> </head> <body> <form method="POST" action="fabu.php"> <h1>發(fā)布信息<h1> <a href="003.php" rel="external nofollow" >主頁面</a> <div>接收人:<input type="text" name="recever"> </select> </div> </select> </div> <br/> <div> 信息內(nèi)容:<textarea input type="text" name="neirong"></textarea> </div><br/> <input type="submit" value="發(fā)送"> </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);//將數(shù)組變?yōu)樽址瘮?shù) $time=date("Y-m-d G:i:s");//獲取時間,G為24小時制 $_SESSION["username"]=$user;//開啟session $user1=implode("",$_SESSION);//將數(shù)組轉(zhuǎn)為字符串 $link=mysqli_connect("localhost","root","","liuyan");//連接數(shù)據(jù)庫 mysqli_query($link,"set names utf8"); $sql="insert into text(sender,recever,comment,time) values('$user1','$re','$comment','$time')"; $result=mysqli_query($link,$sql);//執(zhí)行語句 $sql1="insert into friend(me,friend) values('$user1','$re')";//將me,friend存入數(shù)據(jù)庫 $result=mysqli_query($link,$sql1);//執(zhí)行語句 if($recever=""||$comment="") { echo "<script>alert('發(fā)布失??!');window.location='fabu.html';</script>"; } else { echo "<script>alert('發(fā)布成功!');window.location='fabu.html';</script>"; } ?>
#效果如下
#最后是退出系統(tǒng)
<?php session_start(); unset($_SESSION["uesrname"]); echo "<script>alert('退出成功!');window.location='denglu.html';</script>"; ?>
#效果如下
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP+MySQL留言板開發(fā)專題》、《php緩存技術(shù)總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》、《PHP錯誤與異常處理方法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計有所幫助。
- 使用PHP開發(fā)留言板功能
- PHP實現(xiàn)的簡單留言板功能示例【基于thinkPHP框架】
- mysql之觸發(fā)器使用
- php+Memcached實現(xiàn)簡單留言板功能示例
- 簡單實現(xiàn)PHP留言板功能
- 基于thinkPHP框架實現(xiàn)留言板的方法
- PHP結(jié)合Mysql數(shù)據(jù)庫實現(xiàn)留言板功能
- php實現(xiàn)網(wǎng)站留言板功能
- php制作文本式留言板
- php簡單的留言板與回復(fù)功能具體實現(xiàn)
- php開發(fā)留言板的CRUD(增,刪,改,查)操作
- php xml留言板 xml存儲數(shù)據(jù)的簡單例子
- 來自經(jīng)典的打造簡單的PHP&MYSQL留言板
- 一個簡單的PHP&MYSQL留言板源碼
- 一個可分頁的基于文本的PHP留言板源碼
- PHP+MySql實現(xiàn)一個簡單的留言板
相關(guān)文章
完美解決令人抓狂的zend studio 7代碼提示(content Assist)速度慢的問題
本篇文章是對解決令人抓狂的zend studio 7代碼提示(content Assist)速度慢的問題進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06php set_magic_quotes_runtime() 函數(shù)過時解決方法
PHP5.3中 bool set_magic_quotes_runtime ( bool $new_setting )函數(shù)過時.2010-07-07