2013-10-21 96 views
1

我在查詢中做錯了什麼? 預先感謝您的幫助不工作要求

新 - 不行

$query = "SELECT * "; 
$query .= "FROM photographs "; 
$query .= "WHERE `caption` LIKE '%".$query."%' "; 
    $query .= "OR `caption2` LIKE '%".$query."%' "; 
//$query .= "WHERE visible = 1 "; 
$query .= "ORDER BY $order_by LIMIT $start, $display ";  
$result = mysqli_query ($connection, $query); 

舊的查詢 - 工作

//$query = ("SELECT * FROM photographs WHERE (`caption` LIKE '%".$query."%') OR (`caption2` LIKE '%".$query."%')"); 
//$result = mysqli_query($connection, $query); 
+0

也許這不是一個好主意,重用變量來搜索什麼。我也看到你不使用查詢參數。我只是希望你已經清理了你的輸入。 http://xkcd.com/327/ –

+0

在將它傳遞給mysqli_query函數之前,先回顯$ query值,然後取出輸出並在你使用的任何mysql客戶端(如phpMyAdmin)上嘗試它,並監視結果 –

回答

1
LIKE '%".$query."%' "; 

應改爲

LIKE '%".$yourTerm."%' "; 

其中$ yourTerm是你想在你的數據庫

+0

:)謝謝給出的答案 –

3

您與您的查詢的部分覆蓋$query變量。 :-)