【求助】php5連到資料庫mysql4.1的多資料表連線問題..... - PCZONE 討論區

返回   PCZONE 討論區 > ▲ ADSL_CABLE_FTTH 寬 頻 上 網 討 論 > -- 網站架設 / 免費空間 / 虛擬主機 專區 > ☉ -- 架 站 DIY 討 論 版


PCZONE 討論區



通知

☉ -- 架 站 DIY 討 論 版 有了寬頻後,可利用來架設 WWW / FTP / MAIL 等各種 SERVER,請在此版跟大家一起討論各種 SERVER 架設心得。

arc
會員
【求助】php5連到資料庫mysql4.1的多資料表連線問題.....
我寫了一個教師管理系統,我是用Dreamweaver MX 2004寫的,在mysql定義了一個資料庫叫account定義了4個資料表,包含基本資料(包含帳號密密)、著作發表(有作者、年份等)、上傳檔案,我在最一開頭,寫了一個登入頁,就是當老師們在用他們自己的帳號登入時,要更改基本資料時,到更改基本資料頁面,會看到自己所屬的資資,這個ok我有寫出來,但問題來了當老師到著作發表的頁面時,老師會看到的是他們自己屬的著作發表文章,而不是全部的,就是因為會連到資料庫裡的2個資料表,所以就不太會連,也就是老師用自己帳號登入後->會從基本資料表裡判斷帳號->在判斷著作發表資料表裡的作者->而著作發表資料表裡的作者欄位和基本資料表裡的姓名欄位應該是一樣的->而最後顯示的是只有他自己的著作發表的資料,也就是自己的帳號登入後只會看到自己帳號的著作發表的資料,不知要怎麼連怎麼link2個資料表,謝謝各位幫忙,不好意思寫這麼多。

回覆
Passion

引用:
作者: arc
我寫了一個教師管理系統,我是用Dreamweaver MX 2004寫的,在mysql定義了一個資料庫叫account定義了4個資料表,包含基本資料(包含帳號密密)、著作發表(有作者、年份等)、上傳檔案,我在最一開頭,寫了一個登入頁,就是當老師們在用他們自己的帳號登入時,要更改基本資料時,到更改基本資料頁面,會看到自己所屬的資資,這個ok我有寫出來,但問題來了當老師到著作發表的頁面時,老師會看到的是他們自己屬的著作發表文章,而不是全部的,就是因為會連到資料庫裡的2個資料表,所以就不太會連,也就是老師用自己帳號登入後->會從基本資料表裡判斷帳號->在判斷著作發表資料表裡的作者->而著作發表資料表裡的作者欄位和基本資料表裡的姓名欄位應該是一樣的->而最後顯示的是只有他自己的著作發表的資料,也就是自己的帳號登入後只會看到自己帳號的著作發表的資料,不知要怎麼連怎麼link2個資料表,謝謝各位幫忙,不好意思寫這麼多。
你寫了這麼多,倒不如把資料表結構及你用的 SQL 命令貼出來讓大家幫你

SELECT A.account, A.username, B.article_id, B.article_year
FROM A, B
WHERE A.account = 'someone' AND A.username = B.username

應該是很簡單的 SQL 命令,建議您參考一下 MySQL 的線上文件,會很有幫助的:

http://dev.mysql.com/doc/mysql/en/select.html
回覆
arc
會員

引用:
作者: nopy
你寫了這麼多,倒不如把資料表結構及你用的 SQL 命令貼出來讓大家幫你

SELECT A.account, A.username, B.article_id, B.article_year
FROM A, B
WHERE A.account = 'someone' AND A.username = B.username

應該是很簡單的 SQL 命令,建議您參考一下 MySQL 的線上文件,會很有幫助的:

http://dev.mysql.com/doc/mysql/en/select.html
那請問一下我這樣寫:
$colname_Recordset1 = "1";
if (isset($_SESSION['MM_Username'])) {
$colname_Recordset1 = (get_magic_quotes_gpc()) ? $_SESSION['MM_Username'] : addslashes($_SESSION['MM_Username']);
}
mysql_select_db($database_ff, $ff);
$query_Recordset1 = sprintf(
"SELECT `data`.username, `data`.longaccount, paper_detail.sn, paper_detail.writer, paper_detail.`year`, paper_detail.title
FROM paper_detail, `data`
WHERE longaccount = '%s' AND paper_detail.writer=`data`.longaccount", $colname_Recordset1);
可是就是不知為什麼進去更新著作頁面時,沒有任何資料,也有有錯誤訊息。
回覆
arc
會員

沒有錯誤訊息

不好意思。
回覆
arc
會員

引用:
作者: arc
那請問一下我這樣寫:
$colname_Recordset1 = "1";
if (isset($_SESSION['MM_Username'])) {
$colname_Recordset1 = (get_magic_quotes_gpc()) ? $_SESSION['MM_Username'] : addslashes($_SESSION['MM_Username']);
}
mysql_select_db($database_ff, $ff);
$query_Recordset1 = sprintf(
"SELECT `data`.username, `data`.longaccount, paper_detail.sn, paper_detail.writer, paper_detail.`year`, paper_detail.title
FROM paper_detail, `data`
WHERE longaccount = '%s' AND paper_detail.writer=`data`.username", $colname_Recordset1);
可是就是不知為什麼進去更新著作頁面時,沒有任何資料,也有有錯誤訊息。
data資料表,就是存放老師的個檔包含帳號、密碼欄位,paper_detail資料表,存放著作發表的資料如作者、年份等欄位。
longaccount為個老師帳號
writer為作者
$colname_Recordset1為取得SESSION和longaccount做比對
回覆
arc
會員

引用:
作者: arc
data資料表,就是存放老師的個檔包含帳號、密碼欄位,paper_detail資料表,存放著作發表的資料如作者、年份等欄位。
longaccount為個老師帳號
writer為作者
$colname_Recordset1為取得SESSION和longaccount做比對

真是感謝nopy大大的指導呀,我以寫出來了,只錯在一個小小的地方,真是不小心。

回覆







 XML   RSS 2.0   RSS 
本站使用 vBulletin 合法版權程式
站務信箱 : [email protected]

本論壇所有文章僅代表留言者個人意見,並不代表本站之立場,討論區以「即時留言」方式運作,故無法完全監察所有即時留言,若您發現文章可能有異議,請 email :[email protected] 處理。