2011-09-30 96 views
1

這裏是我的sql語句錯誤的SQL語法用一個簡單的查詢

SELECT ID, post_title, post_name, post_type 
    FROM `wp_posts` 
WHERE `post_type` LIKE 'ep_e%' 

我在phpMyAdmin運行這個SQL語句,完美的作品和(這裏可能並不重要)返回106行

但是PHP中我使用數據庫類運行此查詢,但出現錯誤

您的SQL語法錯誤;檢查對應於你的MySQL 服務器版本使用附近的「ep_e%」正確的語法

我試圖插也仍然得到一個錯誤:(

$evt = 'ep_event'; 
SELECT ID, post_title, post_name, post_type 
    FROM `wp_posts` 
WHERE `post_type` like '{$evt}' 

我手動真是難倒這裏: - /感謝提前

這裏是我的類中的函數

protected function _prepareQuery() 
{ 
    if (!$stmt = $this->_mysqli->prepare($this->_query)) { 
     trigger_error("Problem preparing query ($this->_query) " . 
      $this->_mysqli->error, E_USER_ERROR); 
    } 
    return $stmt; 
} 
+1

也許在此之前的代碼中存在問題。請發佈您正在使用的實際PHP。 – Cfreak

+0

你可以發佈你的php代碼嗎? – smp7d

+0

發佈PHP代碼。我聞到一個錯字。 – Nikki9696

回答

1

不知道它只是在你的後一個錯字,但

select ID, post_title, post_name, post_type from `wp_posts` where `post_type` like {$evt} 

應該

select ID, post_title, post_name, post_type from `wp_posts` where `post_type` like '{$evt}' 

的通知的結尾。你已經在phpMyAdmin中添加了正確的內容,但是你從代碼中粘貼的東西沒有。

1

不知道這是否是或不...

你把刻度線,圍繞「post_type」字段,在where子句中,而不是在場上的選擇......我不不要以爲這是一個本來需要的保留字。你有沒有嘗試刪除所有的刻度線,即使在桌子周圍......