我不知道爲什麼這不起作用。 while循環更新DB中的日期只更新第一行?
function query($sql) {
$this->result = @mysql_query($sql, $this->conn); return($this->result != false); }
函數convert(){ $ this-> db-> open(); $ sql_update =「」; $ this-> db-> query(「SELECT * FROM ACCOUNTS」); $ str =''; ($ row = $ this-> db-> fetchassoc()){ $ jobNum = $ row ['JOBNUMBER']; $ old_date = $ row ['INSTALLDATE']; $ new_date = date(「Y-m-d」,strtotime($ old_date)); $ sql_update =「UPDATE ACCOUNTS SET INSTALLDATE ='$ new_date'WHERE JOBNUMBER ='$ jobNum'」; ($ sql_update)或die($ this-> response-> throwResponseError(MSG_DATABASE_ERROR。mysql_error())); $ str。= $ jobNum。 「 - 」。 $ new_date。 「
」; }return $str; }
如果我與該行註釋掉運行它,它返回所有我想要的結果。但是當我取消註釋實際運行更新的行時,它會更新第一條記錄並停止循環。爲什麼?
所以,我會是最好把所有的變量都推到一個數組中,然後爲每個變量賦值?或者我該如何解決它? – mlebrun15 2009-08-06 17:40:58
完美。我老實說花了幾個小時,看不出有什麼干擾。非常感謝! – mlebrun15 2009-08-06 17:44:21
'@ mlebrun15':真正好的一點是,你可以在'MySQL'一邊進行,就像在帖子中顯示的一樣。 – Quassnoi 2009-08-06 17:48:59