gpt4 book ai didi

php - 更新 PHP 中的查询问题

转载 作者:行者123 更新时间:2023-11-29 05:26:46 25 4
gpt4 key购买 nike

这是我的表 'tbl_size'

**Col Name**        **Data Type**   
size_id int(11)
pd_id int(11)
size_name varchar(20)
size_chart int(6)
qty text

现在我正在尝试使用以下查询更新此表

$query="update tbl_size set `qty`='10' where `size_id`=335";

当我在 mysql 中运行此查询时,它工作正常,但当我尝试从 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

最佳答案

检查你的表格结构,你有数量的文本类型。它可能不是 char 或 varchar 类型(或者它是并且默认值设置为“0”)。要解决此问题,您可以使用 phpmyadmin、SQLyog 或其他 MySql 管理程序。

改变你的查询

$sql_qty="update tbl_size set `qty`=$pqty where `size_id`=".$rowvo['size_id'];

$sql_qty="update tbl_size set `qty`='$pqty' where `size_id`='".$rowvo['size_id']."'";

关于php - 更新 PHP 中的查询问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19242288/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com