2012-07-08 152 views
-3

我想顯示來自多行的信息。在不改變我的大部分代碼的情況下,我怎樣才能在我的網頁上回顯包含user_id_offerer ='$ offerer'的多行。我沒有迴應mysql的查詢,我得到了資源ID#14的結果,我明白一個while循環是必要的,但它似乎有一個與MySQL的問題。我該如何解決?資源ID#14

說明:當我用while循環運行代碼時,我收到了第一行的無限循環。我沒有收到每個行都有user_id_offerer ='發起人'。如何解決這個問題,而不需要重新編寫代碼。

function ergo_data ($offerer) { 

    $data = array(); 
    $offerer = (int)$offerer; 

    $func_num_args = func_num_args(); 
    $func_get_args = func_get_args(); 

    if ($func_num_args > 1) { 
      unset($func_get_args[0]); 
     $fields ='`' . implode ('`, `', $func_get_args) . '`'; 
     $data = mysql_fetch_assoc (mysql_query("SELECT $fields FROM `ergo` WHERE `user_id_offerer` = '$offerer'")); 
     return $data; 
    } 
} 

if (logged_in() === true) { 
    $session_user_id = $_SESSION['user_id']; 
    $ergo_data = ergo_data($session_user_id, 'primary_key', 'user_id_offerer', 'user_id_seeker', 'ergo', 'ergo_time_submitted'); 
} 

echo $ergo_data['ergo'] . '<br>'; 
echo username_from_user_id($ergo_data['user_id_offerer']) . '<br>'; 
echo username_from_user_id($ergo_data['user_id_seeker']) . '<br>'; 
echo $ergo_data['ergo_time_submitted'];` 
+0

呼應多行只需要一個循環。你想做什麼? – Lion 2012-07-08 04:29:58

+0

如果只有一行,則while循環不是必需的。不過,目前還不清楚你想要做什麼或錯誤/問題是什麼。 – sachleen 2012-07-08 04:33:30

+0

當我用while循環運行代碼時,我收到第一行的無限循環。我沒有收到每個具有user_id_offerer ='offerer'的行。如何解決這個問題,而不需要重新編寫代碼。 – jason328 2012-07-08 04:40:10

回答

0

我認爲你需要從ergo_data返回的mysql_query的結果()函數(而不是mysql_fetch_assoc的結果),然後調用在循環mysql_fetch_assoc:

// inside ergo_data(), change 
// $data = mysql_fetch_assoc (mysql_query("SE ... 
// to: 
function ergo_data ($offerer) { 
    ... 
    return mysql_query("SELECT $fields FROM `ergo`...."); 
} 
... 
if (logged_in() === true) { 
    $session_user_id = $_SESSION['user_id']; 
    $query_result = ergo_data($session_user_id, 'primary_key', 'user_id_offerer', 'user_id_seeker', 'ergo', 'ergo_time_submitted'); 
    while($ergo_data = mysql_fetch_assoc($query_result)) { 
     echo $ergo_data['ergo'] . '<br>'; 
     echo username_from_user_id($ergo_data['user_id_offerer']) . '<br>'; 
     echo username_from_user_id($ergo_data['user_id_seeker']) . '<br>'; 
     echo $ergo_data['ergo_time_submitted']; 
    } 
} 
+0

你的男人ctrahey。謝謝您的幫助。 – jason328 2012-07-08 04:50:50

+0

沒有問題,祝你好運! – 2012-07-08 04:51:11