我可能在我的MySQL查詢中有一個語法錯誤,所以它沒有返回任何結果。使用SimplaCMS可以關閉錯誤,因爲CMS與本地服務器發生衝突。那麼我錯過了什麼?一如既往的代碼:查詢返回null或錯誤
$product=$variant['name'];
$this->db->query("SELECT id FROM s_products WHERE name='$product' LIMIT 1");
這是什麼原因造成的?
我可能在我的MySQL查詢中有一個語法錯誤,所以它沒有返回任何結果。使用SimplaCMS可以關閉錯誤,因爲CMS與本地服務器發生衝突。那麼我錯過了什麼?一如既往的代碼:查詢返回null或錯誤
$product=$variant['name'];
$this->db->query("SELECT id FROM s_products WHERE name='$product' LIMIT 1");
這是什麼原因造成的?
你試過像
$this->db->query("SELECT id FROM `s_products` WHERE name='".$product."' LIMIT 1");
您需要連接的$product
價值,並像其他字符串值:
$this->db->query("SELECT id FROM s_products WHERE name='".$product."' LIMIT 1");
也許你需要在引號中的名稱這樣
"SELECT id FROM s_products WHERE name = '".$product".' LIMIT 1"
調試SQL,然後直接在mysql中執行查詢
SimplaCMS管理自己的數據庫$db
與自定義類。這個自定義類包含一個名爲->placehold
的方法。
在這一行動的一個例子是:
$placeholder = $this->db->placehold("SELECT id FROM s_products WHERE name=? LIMIT 1", $product);
$this->db->query($placeholder);
//$this->db->results(); //results are now in this variable
來自SimplaCMS的更多參考[這裏](https://github.com/pikusov/Simpla/blob/master/api/Comments.php)。 –
' - > db-> query('SELECT id FROM s_products WHERE name =?LIMIT 1',$ product)'我應該也能工作。 –
嘗試直接在您的phpmyadmin執行查詢,以檢查是否有一些數據....和它的好,如果您連接$的產品,而不是鍵入它的直接 –
嘗試在查詢之後立即打印數據庫錯誤信息。 – ironcito