2013-06-13 152 views
0

我的更新語句dos似乎沒有更新我的數據庫,但我不確定爲什麼,我在腳本的其他地方使用了相同的代碼,它工作正常。PDO更新沒有更新數據庫

​​

我已經試過手動輸入查詢到數據庫使用phpMyAdmin只是爲了測試我有我的表名正確且查詢並正常工作。

UPDATE docs SET ref = 'FMS', 
rev = 'D', 
updated = NOW() WHERE id =73 

所以這讓我想我在我的PDO聲明中有一個錯誤。儘管try catch塊沒有提供任何錯誤。

+0

引發的錯誤,你試過打印出在你的PHP代碼中的查詢? – ajtrichards

+0

如果你爲'updated'綁定了字符串「NOW()」,那麼你可能會遇到問題,而不是它,把一個PHP日期時間格式 –

+0

@RoyalBg我通過日期像date_default_timezone_set('UTC'); $ date = date(「Y-m-d」); 然後使用$ date變量傳入PDO語句 – twigg

回答

2

有所有可能的原因

  • 存在在查詢錯誤(其必須被拋出)
  • 沒有數據相匹配的條件。
  • 數據已經更新 - 無法更改。
  • 您正在檢查您正在更新的表/數據庫。

請驗證列出的所有問題。

順便說一句,要能看到你有configure PHP properly

+0

你好,感謝您的幫助,我會現在看看這個,即時連接到我的數據庫是這樣的: 嘗試{0} {conn =新的PDO(「mysql:host = $ dbhost; dbname = $ dbname」,$ dbuser,$ dbpass); $ conn-> setAttribute(PDO :: ATTR_ERRMODE,PDO :: ERRMODE_EXCEPTION); } catch(PDOException $ e){ echo $ e-> getMessage(); } 這是否足以在我的上述代碼中正確地拋出錯誤? – twigg