2014-07-14 53 views
-1

我想獲取存儲在「客戶」表中的公寓所有者的詳細信息(姓名和電子郵件),具體取決於選擇哪個公寓,其中的詳細信息存儲在'appmt_user'表。 我有以下公共職能,我無法去工作。php根據另一張桌子上的數據獲取來自1個桌子的數據

public function getOwnerdetails($appmt_id){ 
    $ownerid = mysql_query("select user_id from appmt_user where appmt_id=".$appmt_id); 

    $ownerdetails = mysql_query("select first_name , surname , email from clients where client_id=".$ownerid); 
    return $ownerdetails; 
} 

當我執行print_r時,變量$ ownerid接縫爲空,所以在$ ownerdetails中沒有返回數據。 我是否需要先在某處保存$ ownerid?

+1

您必須調用'mysql_fetch_assoc'從查詢中獲取一行結果。我不能相信這會出現每一天,你不知道如何遵循教程? – Barmar

+0

另外,您應該使用JOIN來組合這兩個查詢。 – Barmar

+0

http://php.net/manual/en/function.mysql-query.php – zod

回答

0

首先,將這兩個查詢與JOIN組合。其次,您需要使用mysql_fetch_assoc從查詢中獲取一行結果 - mysql_query()只是返回資源,而不是您選擇的值。

public function getOwnerdetails($appmt_id) { 
    $appmt_id = intval($appmt_id); // Sanitize input 
    $results = mysql_query("SELECT c.first_name, c.surname, c.email 
          FROM clients AS c 
          JOIN appmt_user AS a ON c.clients_id = a.user_id 
          WHERE a.appmt_id = $appmt_id"); 
    $ownerdetails = mysql_fetch_assoc($results); 
    return $ownerdetails; 
} 
+0

我沒有意識到我不得不使用mysql-fetch_assoc。我有另一個功能沒有它的工作正常,並返回12個值沒有問題。公共職能getApartmentdetails($ id){ \t \t $ row = mysql_fetch_assoc(mysql_query(「select * from apartment_master where status = true and appmt_id =」。$ id)); \t \t return $ row; \t} – Mars

+0

該函數調用'mysql_fetch_assoc',它正好在'$ row ='之後。 – Barmar

+0

所以它! - DOH!我怎麼錯過了? - 感謝您的幫助,現在一切正常。 – Mars

相關問題