求大神幫忙看看哪裡出錯了。
我想實現使用者之間的通訊,思想是建立一個訊息表,然後把收件者使用者名稱、寄件者使用者名稱、訊息等放進去,然後誰想看發給自己的訊息就去訊息表中尋找收件者是自己的記錄。現在做到發訊息這一塊兒了,發完訊息我發現
資料庫訊息表中並沒有記錄,應該是沒有正確插入表中,大神幫忙看看是哪裡錯了,我也是剛接觸PHP的,以前上課學的東西都是基礎的,運用到實踐中總是出很多問題。
下面附上相關的代碼(
其中sqltable是使用者表,sqltable2是訊息表,user_name是使用者表中儲存使用者名稱的,s_name是訊息表中儲存寄件者的,r_name是訊息表中收件者)
config.php
//常規參數設定
$servername="localhost"; //主機名稱
$sqlservername="root"; //mysql資料庫使用者名稱
$sqlserverpws="lmy"; //mysql資料庫密碼
$sqlname="lmy"; //資料庫名
$sqltable="user"; //username表名
$sqltable2="message";
$admin_name="lmy"; //管理使用者名
$admin_pws="lmy"; //管理員密碼
?>
message.php
session_start(); //一定要的
if($_SESSION["name"]==""){
echo "";
exit;
}
//上面的要驗證過濾的
?>
給管理員發信
message_cl.php
session_start(); //一定要的
if($_SESSION["name"]==""){
echo "";
exit;
$_SESSION["name"]=$row[user_name];
//這裡是SESSION來驗證使用者的合法性
}
include("config.php"); //參數頁面提取過來
if(empty($_POST["r_name"])){
echo ("");
exit;
}
if(empty($_POST["content"])){
echo ("");
exit;
}
$s_name=$_SESSION["name"];
$r_names=$_POST["r_name"];
$content=$_POST["content"];
$add_time=date("Y-m-d");
$is_open="no";
$db=mysql_connect($servername,$sqlservername,$sqlserverpws);
mysql_select_db($sqlname,$db) ;
$sql="select * from $sqltable where user_name='$s_name'";
$result=mysql_fetch_row(mysql_query($sql));
if(!$result){
echo ("");
}
else{
$sql="insert into $sqltable2(s_name,r_name,content,add_time,is_open) values('$s_name','$r_name','$content','$add_time','$is_open') ";
mysql_query($sql);
echo ("");
}
?>
------解決思路----------------------
哈哈,把分給我吧,已經遠程協助解決。就是sql表裡沒有is_open欄位而php又要插入is_open欄位值,還有就是sql語句拼裝問題