2011-03-19 70 views
0

我正在重構我的DAL,現在我將開始使用mysqli並準備好語句。我的第一個任務是使用mysqli,所以我現在正在測試。無法查詢本地數據庫查詢爲空

這是我的DAL類。這僅僅是我使用的代碼的一部分:

class DAL { 
    private $mysqli; 
    (...) 

    // Create new mysqli object 
    private function conn() { 
    $this->mysqli = new mysqli($this->host, $this->username, $this->pwd, $this->dbname); 
    if(mysqli_connect_errno()) { 
      echo "Connection Failed: " . mysqli_connect_errno(); exit(); 
    }  
    } 

    public function getRowByValue($table,$column, $value) 
    { 
    $this->conn(); 
    $result = $this->mysqli->query("SELECT name FROM sl_store LIMIT 5"); 
    $result->close(); 
} 

當執行mysqli的查詢,我只得到這樣的結果:Unable to query local database Query was empty。 我測試了Toad中的SQL代碼,它返回5行。

那麼,爲什麼我得到這個錯誤/我做錯了什麼?

回答

0

即使沒有處理你的查詢是必要的(沒有變量的解釋等),這可能是可能的,該查詢()需要一個字符串用「而不是」分隔,只是猜測,因爲這個例子從php.net

if (!$mysqli->query("SET @a:='this will not work'")) { 
+0

不,那不是它。 – Steven 2011-03-19 09:30:59

+0

嗨,我本地測試代碼,和它的工作。一個原因可能是訪問$結果後,關閉它。這是什麼回聲$這個 - > mysqli->錯誤;說,在執行查詢後?給定的結果? – strauberry 2011-03-19 10:10:46

+0

'$ this-> mysqli-> error'不會輸出任何內容 – Steven 2011-03-19 12:01:04