[英]mysql_query() returns something strange
我想從數據庫中選擇一個字段( MessageCounter
)。 它的類型是int(11)
。 我想增加它。
這是我嘗試選擇它的方法:
$q = "SELECT MessageCounter FROM " . TBL_USERS . " WHERE username = '$username'";
$result = mysql_query($q, $this->connection);
然后我嘗試添加1
:
$messagecount = $result + 1;
$field = "MessageCounter";
$q = "UPDATE " . TBL_USERS . " SET " . $field . " = '$messagecount' WHERE username = '$username'";
return mysql_query($q, $this->connection);
並在數據庫中更新為19
。 如果我加上其他數字而不是1
,比如說3
,我得到21
。 因此, $result
在某種程度上等於18
。 但是,如果我嘗試使用相同的結果更新數據庫-它將字段更新為0
。
有人知道發生了什么嗎?
您不能在$result
加1-首先,您需要從中獲取值:
$row = mysql_fetch_row($result);
$messagecount = $row[0] + 1;`
順便說一句-在學習的這個階段,您應該放棄不推薦使用的mysql_
函數,而改用mysqli或PDO。 現在就做。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.