2010-05-03 18 views
0

我有PHP函數,它檢查是否設置了變量,然後將它們添加到我的SQL查詢中。但是,我似乎沒有得到任何結果回來?SQL不起作用?它沒有提出錯誤

$where_array = array(); 
    if (array_key_exists("location", $_GET)) { 
     $location = addslashes($_GET['location']); 
     $where_array[] = "`mainID` = '".$location."'"; 
    } 
    if (array_key_exists("gender", $_GET)) { 
     $gender = addslashes($_GET["gender"]); 
     $where_array[] = "`gender` = '".$gender."'"; 
    } 
    if (array_key_exists("hair", $_GET)) { 
     $hair = addslashes($_GET["hair"]); 
     $where_array[] = "`hair` = '".$hair."'"; 
    } 
    if (array_key_exists("area", $_GET)) { 
     $area = addslashes($_GET["area"]); 
     $where_array[] = "`locationID` = '".$area."'"; 
    } 

    $where_expr = ''; 
    if ($where_array) { 
     $where_expr = "WHERE " . implode(" AND ", $where_array); 
    } 

    $sql = "SELECT `postID` FROM `posts` ". $where_expr; 

    $dbi = new db(); 
    $result = $dbi->query($sql); 
    $r = mysql_fetch_row($result); 

我想以後調用數據列表中,像這樣:

 $dbi = new db(); 
$offset = ($currentpage - 1) * $rowsperpage; 

// get the info from the db 
$sql .= " ORDER BY `time` DESC LIMIT $offset, $rowsperpage"; 
$result = $dbi->query($sql); 
// while there are rows to be fetched... 

     while ($row = mysql_fetch_object($result)){ 
      // echo data 

     echo $row['text']; 


     } // end while 

任何人有任何想法,爲什麼我沒有任何檢索數據?

+0

在執行之前,可以通過發佈'$ sql'包含的內容來簡化操作。 – 2010-05-03 15:35:47

+0

這裏已經有$ sql語句了,我在分頁之後加上偏移量來計算SORT​​ BY,它也在那裏 – 2010-05-03 15:37:07

+0

他意思是在'$ dbi- > query($ sql)' – 2010-05-03 15:38:55

回答

0
while ($row = mysql_fetch_object($result)){ 
     // echo data 

    echo $row->text; 


    } // end while 

我忘了它不是來自陣列!

相關問題