這是我的表「tbl_size」在PHP更新查詢問題
**Col Name** **Data Type**
size_id int(11)
pd_id int(11)
size_name varchar(20)
size_chart int(6)
qty text
現在我想要當我運行mysql中此查詢與下面的查詢
$query="update tbl_size set `qty`='10' where `size_id`=335";
更新此表中,工作正常,但當我嘗試從PHP做的同樣的事情,那麼它正在更新qty
'0',而不是'10'。 我不明白爲什麼會發生這種情況。請幫我解決這個問題。
新的更新代碼:
// $rowvo['od_qty']=10;
// $row_1['qty']=20;
$sql = "SELECT qty FROM tbl_size WHERE size_id =".$rowvo['size_id'];
$result = dbQuery($sql);
$row_1 = dbFetchAssoc($result);
$pqty=$row_1['qty']-$rowvo['od_qty'];
echo "Total Quantity Available Before Diduction : ".$row_1['qty'];
echo "Sold Quantity : ".$rowvo['od_qty'];
echo "Remaining Quantity : $pqty";
$sql_qty="update tbl_size set `qty`=$pqty where `size_id`=".$rowvo['size_id'];
echo "$sql_qty<br>";
$result_qty=mysql_query($sql_qty) or die('Error : '.mysql_error());
echo "No of Rows Affected : ".mysql_affected_rows()."<br>".mysql_error(); // 1
新與PDO代碼:
try {
$b=$a->prepare("update tbl_size set `qty`=:qty where `size_id`=:size");
$b->bindValue(":size",$size_id);
$b->bindValue(":qty",$pqty);
$b->execute();
} catch(PDOException $ex) {
echo "An Error occured!"; //user friendly message
}
和後續代碼var_dump($ EX)= NULL
東西在你的PHP代碼是怎麼了。最有可能是由於代碼注入(我猜)。我們可以在您撥打數據庫的位置看到您的**實際** PHP代碼嗎? – h2ooooooo
如果數量是數量,那麼爲什麼你不使用int ...? –
如果您的PHP發生問題,那麼您爲什麼不向我們展示您的PHP? –