2013-02-07 104 views
5

處理我有下面的代碼塊,預計返回count帶括號的笨查詢

$sql = "SELECT sum(count) as count 
      FROM multipleowners WHERE owner = ? " . $localityquery; 
    $queryarray = array($owner, $locality); 
    $query = $this->db->query($sql, $queryarray); 
    if ($query->num_rows() > 0) 
    { 
     $result = $query->row_array(); 
     $count = $result['count']; 
    } 

但是我得到空值,當我嘗試打印$count

我用print_r($this->db->last_query());,我得到了下面的查詢,

SELECT sum(count) as count FROM multipleowners WHERE owner = 'Davenports Harbour Trustee (2012) Limited' and locality = 'Auckland Central' 

當我直接執行此查詢到我的PostgresqlIDE我得到的count輸出作爲2

什麼和哪裏可以這個查詢出錯了?我懷疑WHERE條款中存在()。我該如何解決 ?

更新

當我使我得到了下面的查詢分析器,

SELECT sum(count) as count 
      FROM multipleowners WHERE owner = 'Davenports Harbour Trustee (2012) Limited' and locality = 'Auckland Central' 

如此明顯的問題上()存在!

+0

探查不在其在這種情況下最好的。嘗試從SQL運行查詢命令提示符,並看看括號是否仍然給悲傷,我懷疑他們這樣做。 – wallyk

+0

不,我試着在IDE上運行查詢,放。 – Deepak

+0

我試圖在不使用查詢綁定的情況下運行查詢,並且得到了正確的輸出。所以這證實了這個問題是在查詢獲取編碼的情況下。 – Deepak

回答

2

賓果!我已經添加了以下行之前,我傳遞的變量$owner到查詢和它的工作,

$owner = html_entity_decode($owner); 
+0

你最好接受你的答案然後;) –

+0

我只能等待2天后才能接受:) – Deepak

0

您是否嘗試過選擇總和(db。[count]作爲icount,因爲在語言中count也可以是保留字,所以括號或重命名它,嘗試不將新輸出命名爲count。

+0

這絕對不是這裏的問題。感謝您的建議,但! – Deepak