我有一個方法是這樣的:調用非對象解決方法?
public function query ($sql) {
$this->result = $this->db->query($sql);
}
綁定查詢語句的結果變量。這非常方便,因爲我有幾種方法可以輸出一些東西,另一種方法可以爲其他任務處理$result
變量。
不過,我想用同一種方法,但在準備好的發言(以逃脫被插入的數據),我遇到了一個問題:
public function prepare ($sql) {
$this->result = $this->db->prepare($sql);
}
我試圖用這樣的:
public function insert ($this, $that) {
// Then I tried to use my prepare method
$var = $this->prepare(INSERT INTO Table (Row1, Row2) VALUES (:Val1, :Val2));
$var->bindValue(":Val1", $this, PDO::PARAM_INT);
//... and so on
}
問題出現在$var->bindValue()
「調用非對象的成員函數bindvalue()」上。這裏究竟發生了什麼,因爲我不明白錯誤信息?如果我查詢我的數據庫使用查詢方法它工作得很好,但我怎樣才能使用prepare方法綁定值?
我可能會認爲你重寫了$ this ...改變爲另一個變量名...即使對於約定 – 2013-03-11 15:44:18
這種方法'公共函數($ sql)'匿名嗎? – Voitcus 2013-03-11 15:45:00
我假設你有「」喚醒你的查詢,只是在輸入SO上的代碼時錯過了它們? – Mchl 2013-03-11 15:45:11