2017-09-26 49 views
0

我有兩個表,regtransreg表包含我所有用戶的註冊信息和trans表包含我所有用戶的借記或信用信息。我想在每個用戶頁面上顯示他們登錄到其頁面時的交易歷史記錄。所以我嘗試使用帳號,但它並不完美。我希望每個用戶在登錄時都能看到他們的交易歷史記錄。顯示錶A中的所有信息,如果一列行帳號匹配

請記住,trans表包含大量信用卡或借記卡交易信息或具有類似帳戶號的不同用戶的歷史記錄。

CREATE TABLE `reg` (
    `UserID` int(200) NOT NULL, 
    `Firstname` varchar(200) NOT NULL, 
    `Lastname` varchar(200) NOT NULL, 
    `Middlename` varchar(200) NOT NULL, 
    `Gender` varchar(200) NOT NULL, 
    `Dob` varchar(200) NOT NULL, 
    `Email` varchar(200) NOT NULL, 
    `Phone` varchar(200) NOT NULL, 
    `Username` varchar(200) NOT NULL, 
    `Password` varchar(200) NOT NULL, 
    `Accounttype` varchar(200) NOT NULL, 
    `identificationtype` varchar(200) NOT NULL, 
    `Address` varchar(200) NOT NULL, 
    `Zipcode` varchar(200) NOT NULL, 
    `Cityname` varchar(200) NOT NULL, 
    `Country` varchar(200) NOT NULL, 
    `Accnumber` bigint(200) NOT NULL, 
    `Amount` varchar(200) NOT NULL, 
    `info` enum('YES','NO','','') NOT NULL, 
    `Status` enum('ADMIN','USER','','') NOT NULL 
) ENGINE=InnoDB DEFAULT CHARSET=latin1; 

--------------------------------------------------------------------- 

CREATE TABLE `trans` (
    `id_transfer` int(10) UNSIGNED NOT NULL, 
    `re_ln` varchar(200) NOT NULL, 
    `re_fn` varchar(200) NOT NULL, 
    `re_name` varchar(200) NOT NULL, 
    `re_number` varchar(200) NOT NULL, 
    `re_amount` varchar(200) NOT NULL, 
    `transfer_code` varchar(200) NOT NULL, 
    `routine_number` varchar(200) NOT NULL, 
    `swift_code` varchar(200) NOT NULL, 
    `Bank_name` varchar(200) NOT NULL, 
    `Bank_address` varchar(200) NOT NULL, 
    `City` varchar(200) NOT NULL, 
    `State` varchar(200) NOT NULL, 
    `Zipcode` varchar(200) NOT NULL, 
    `Country` varchar(200) NOT NULL, 
    `Pincode` varchar(200) NOT NULL, 
    `Transfer_id` varchar(200) NOT NULL, 
    `t_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, 
    `Statuss` enum('YES','NO','CANCEL','') NOT NULL 
) ENGINE=InnoDB DEFAULT CHARSET=latin1; 

這裏是顯示的信息

require_once 'dbconfig.php'; 

    $stmt = $db_con->prepare("SELECT * FROM trans INNER JOIN reg ON reg.Accnumber = trans.Transfer_id "); 
    $stmt->execute(); 
    while($row=$stmt->fetch(PDO::FETCH_ASSOC)) 
    { 
     ?> 
     <tr> 
     <td height="38"><?php echo $row['re_name']; ?></td> 
     <td><?php echo $row['Bank_name']; ?></td> 
     <td><?php echo $row['re_number']; ?></td> 
     <td>$<?php echo $row['re_amount']; ?></td> 
     <td><?php echo $row['swift_code']; ?></td> 
     <td><?php echo $row['t_date']; ?></td> 
     <td align="center"> 
      <?php 
+0

我想,你已經在你的代碼中完成了它。您只需在使用會話的查詢中傳遞用戶標識。 –

+0

不,reg中的賬號與trans中的賬號不一樣。它正在挑選另一個類似於註冊賬號的賬號,但兩者都不相同。我有3042325018帳號在reg.Accnumber和3042325026在trans.Tranfer_id。 –

回答

0

只是一個小的修改您的查詢,並通過會話值的代碼。舉一個粗略的例子:

SELECT * FROM trans 
INNER JOIN reg 
ON reg.Accnumber = trans.Transfer_id 
WHERE USER_ID = SESSION["userId"]; 
+0

不能正常工作,請幫我看看我的會話代碼 <?php \t session_start();如果($ _ SESSION ['UserID'] =='「) \t} \t如果($ _ SESSION [ '狀態'] = 「USER」!) \t { \t \t回聲 「只此頁面爲用戶!」 \t \t exit(); \t} \t \t include(「conn.php」); \t $ strSQL =「SELECT * FROM reg WHERE UserID ='」。$ _ SESSION ['UserID']。「'」; \t $ objQuery = mysql_query($ strSQL); \t $ objResult = mysql_fetch_array($ objQuery); ?> –

+0

謝謝你Chri85和AT-2017我已經做得很好,它正在工作 –

+0

我相信,與會話一起工作? –

相關問題