本文目錄一覽:
- 1、php留言板是實現無限回復功能
- 2、php程序bbs留言板程序調試時出錯,錯誤提示如下:Parse error: parse error in C:\wamp\www\php_testing\b
- 3、如何用php做出登陸註冊留言板
- 4、用PHP完成留言板功能
- 5、求一步一步教PHP留言板製作方法
php留言板是實現無限回復功能
可以有2種解決方案。
1:建立一張留言回復表(將回復也視為留言,統一至一張表),主鍵留言ID自增量,並增加一個外鍵字段,用於保存其所回復的留言ID,對於留言本身此外鍵便為空,而對於回復別人的留言,則此外鍵保存所回復的留言ID。
2:建立2張表,一張留言表,一張留言回復表。這個就好理解些。只需在留言回復表中增加一個外鍵-留言ID便可
php程序bbs留言板程序調試時出錯,錯誤提示如下:Parse error: parse error in C:\wamp\www\php_testing\b
?php
include(“conn.php”);
if($_POST[‘submit’]) {
$sql=”insert into message (id,user,title,content,lastdate) values(”,'”. $_POST[‘user’] . “‘,'” . $_POST[‘title’] . “‘,'” . $_POST[‘content’] . “‘,now())”;
mysql_query($sql);
echo “發表成功”;
}
?
form action=”add.php” method=”post”
用戶:input type=”text” size=”10″ name=”user”br
標題:input type=”text” name=”title”br
內容:textarea name=”content”/textareabr
input type=”submit” name=”submit” value=”發佈留言”/
/form
如何用php做出登陸註冊留言板
登錄頁:login.php
?php
include(“conn.php”);
$username=$_POST[‘name’];
$password=$_POST[‘password’];
$yanzheng=$_POST[‘yanzheng’];
if(isset($_POST[‘submit’]))
{
$sql=(“select username,password from member where username=’$username’ and password=’$password'”) or die(“sql語句執行失敗”);
//print_r($sql);
$ar=mysql_query($sql);
if($ar)
{
if($row=mysql_fetch_array($ar))
{
session_start();
if($_POST[“yanzheng”])
{
if($yanzheng!=$_session[pic]||$yanzheng==””)
{
echo “驗證碼輸入有誤”;
exit;
}
if($yanzheng==$_session[pic])
{
header(“location:index.php”);
}
}
}
else
{
echo “用戶名或密碼錯誤”;
}
}
}
?
form action=”login.php” method=”post”
table border=1 align=center width=500 height=300 bgColor=#DFFFDF bordercolor=#fffbec
tr
td colspan=2 align=center用戶登錄/td
/tr
tr
td用戶姓名:/td
tdinput type=”text” name=”name” id=”name”//td
/tr
tr
td用戶密碼:/td
tdinput type=”password” name=”password” id=”password”//td
/tr
tr
td驗證碼:/td
tdinput type=”text” name=”yanzheng” id=”yanzheng”/
img src=”yanzheng1.php” width=”50″ height=”30″/img
/td
/tr
tr
td colspan=3 align=center
input type=”submit” name=”submit” value=”登錄”/
input type=”reset” name=”reset” value=”重置”/
a href=”register.php”註冊/a
/td
/tr
/table
/form
註冊頁:register.php
?php
include(“conn.php”);
if(isset($_POST[‘submit’])$_POST[‘submit’]) {
if($_POST[‘username’]==”)
{
echo “用戶名不能為空”;
exit();
}
if($_POST[‘password’]==”)
{
echo “密碼不能為空”;
exit();
}
if($_POST[‘realpass’]!=$_POST[‘password’])
{
echo “兩次密碼輸入不一致”;
exit();
}
$sql=”insert into member(username,real_name,password,email,headimg) values(‘$_POST[username]’,’$_POST[username]’,’$_POST[password]’,’$_POST[email]’,”)”;
$ar=mysql_query($sql);
if($ar)
{
header(“location:index.php”);
}
else
{
echo mysql_error();
}
}
?
body
form action=”register.php” method=”post”
table border=1 align=center width=500
tr
td height=40 bgColor=#DFFFDF colspan=2會員註冊 [a href=”login.php”返回登錄頁/a]/td
/tr
tr
td height=40 bgColor=#fffbec 會員ID/td
tdinput type=”text” name=”username” id=”username”//td
/tr
tr
td height=40 bgColor=#fffbec密碼/td
tdinput type=”password” name=”password” id=”password”//td
/tr
tr
td height=40 bgColor=#fffbec確認密碼/td
td
input type=”password” name=”realpass” id=”realpass”/
/td
/tr
tr
td height=40 bgColor=#fffbecEMAIL/td
tdinput type=”text” name=”email” id=”email”/
/tr
tr
td height=40 bgColor=#fffbec/td
tdinput type=”submit” name=”submit” value=”註冊”/input type=”reset” value=”重置”/td
/tr
/table
/form
/body
主頁顯示:index.php
?php
include(“conn.php”);
function cutstr($str,$cutleng)
{
$str = $str; //要截取的字符串
$cutleng = $cutleng; //要截取的長度
$strleng = strlen($str); //字符串長度
if($cutleng$strleng)return $str;//字符串長度小於規定字數時,返回字符串本身
$notchinanum = 0; //初始不是漢字的字符數
for($i=0;$i$cutleng;$i++)
{
if(ord(substr($str,$i,1))=128)
{
$notchinanum++;
}
}
if(($cutleng%2==1)($notchinanum%2==0)) //如果要截取奇數個字符,所要截取長度範圍內的字符必須含奇數個非漢字,否則截取的長度加一
{
$cutleng++;
}
if(($cutleng%2==0)($notchinanum%2==1)) //如果要截取偶數個字符,所要截取長度範圍內的字符必須含偶數個非漢字,否則截取的長度加一
{
$cutleng++;
}
return substr($str,0,$cutleng);
}
?
html
head
script type=”text/javascript”
function All(e, itemName)
{
var aa = document.getElementsByName(itemName);
for (var i=0; iaa.length; i++)
aa[i].checked = e.checked; //得到那個總控的複選框的選中狀態
}
function Item(e, allName)
{
var all = document.getElementsByName(allName)[0];
if(!e.checked) all.checked = false;
else
{
var aa = document.getElementsByName(e.name);
for (var i=0; iaa.length; i++)
if(!aa[i].checked) return;
all.checked = true;
}
}
/script
/head
?php
include(“conn.php”);
if(isset($_POST[‘del’]))
{
$mm = $_POST[“selected”];
$id =implode(“,”,$mm);
$sql = “delete from forums where id in(“.$id.”)”;
//echo $sql;
$result=mysql_query($sql);
echo $result?”刪除成功”:”刪除失敗”;
}
?
table style=”BORDER-BOTTOM-WIDTH: 1px; BORDER-COLLAPSE: collapse” cellSpacing=0 cellPadding=0 width=600 align=center border=1 bordercolor=#ddddff
tr align=middle
td height=40 bgColor=#DFFFDF colspan=3論壇列表/td
/tr
tr
td colspan=3a href=”login.php” style=”float:right”[退出系統]/aa href=”add_forum.php” style=”float:right”[添加論壇]/a/td
td/td
/tr
tr align=middle
td height=40 bgColor=#DFFFDF width=80狀態/td
td height=40 bgColor=#DFFFDF論壇/td
td height=40 bgColor=#DFFFDF最後更新/td
/tr
?php
$sql=”select * from forums”;
$result=mysql_query($sql);
$num=mysql_num_rows($result);
if($num0)
{
while($row=mysql_fetch_array($result)){
?
tr align=middle
td bgColor=#fffbecinput type=”checkbox” name=”selected” value=”1″//td
td height=50 bgColor=#fffbec width=300
?php
echo “diva href=\”forums.php?F=”.$row[‘ID’].”\””.$row[‘forum_name’].”/a/div”;
echo cutstr($row[‘forum_description’],24);//最多顯示24個位元組,12個字,多餘部分用省略號代替
echo “……”;
?
/td
td height=50 bgColor=#fffbecdiv?php echo $row[‘last_post_time’].”by”.$row[‘last_post_author’]?/div/td
/tr
?php
}
}
else
{
echo “tr bgColor=#fffbectd colspan=3對不起,論壇尚在創建中……/td/tr”;
}
?
tr
td colspan=3 input type=”checkbox” name=”selected” value=”1″ onclick=”All(this,’selected’)”/全選/不全選/td
/tr
tr
tdinput type=”button” name=”del” id=”del” value=”刪除選中項”/
?php
?
/td
/tr
/table
/html
自己創建數據庫就好。
用PHP完成留言板功能
留言表:留言ID、用戶ID、內容、發表時間、修改時間(此字段可選)。
回復表:回復ID、留言ID、用戶ID、內容、發表時間、修改時間(此字段可選)。
第一個用戶ID是誰發表的留言,第二個用戶ID是誰回復的留言,這樣無限回復沒問題,應該和你設計的差不多。
查詢(查詢某條留言的所有回復):
在回復表裡查詢所有該留言的回復記錄(查詢條件為留言ID),並按發表時間降序
回復內容表:
回復Id 回復內容
回復關聯表:
回復內容id 回復內容id
已私信
求一步一步教PHP留言板製作方法
1. 先設計數據表,一般留言板需要兩個表:留言內容表、回復表
留言內容表:messages
字段如下:
id 自動增加
contents 留言內容
messages_time 留言時間
回復表:reply
字段如下:
id 自動增加
messages_id 關聯messages表的id
contents 回復的內容
reply_time 回復時間
2. 設計留言板頁面及保存留言數據
大概代碼如下:
form name=”form1″ method=”post” action=”index.php?action=ok”
texarea cols=”30″ rows=”10″ name=”contents”
/textarea
input type=”submit” value=”提交”
/form
?php
if($_GET[‘action’] == ‘ok’){
$contents = $_POST[‘contents’];
mysql_query(“insert into messages values(NULL,'”.$contents.”‘,now())”);
}
?
3. 顯示留言內容,遍曆數據表
?php
//包含數據連接代碼
require(‘data.php’);
$query = mysql_query(“select * messages”);
while($array = mysql_fetch_array($query)){
echo $array[‘contents’].”br”;
}
?
4. 回復的設計可以參照留言的設計
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/153350.html