获取MySQL计数值并保存到表中

3

我这里想要获取计数的值并保存到我的表格中,但是它没有起作用。我只想获取计数值,请你帮忙吗?我会感激任何回答。显示计数没有问题,但只是在保存到我的表格中出了问题。

    <form method="POST">
        Date : <input type="text" value="<?=$p_date?>" name="datereceived" />
        <input type="submit" name="save" value="save">
    </form>

PHP

    <?        
        $sql="SELECT allinvty3.*, barcode.* ,  sample.*, count(barcode.itemcode) as icount  
    from barcode INNER JOIN sample on barcode.itemcode = sample.in_code INNER JOIN allinvty3 on 
    barcode.itemcode = allinvty3.in_code WHERE barcode.refnumber = '$temp'
 GROUP BY barcode.itemcode";

        $result = $conn->query($sql);
        while($row = $result->fetch_assoc()) {
            $icount = $row['icount'];
        }

        if(isset($_POST['save'])){
            $sql = "UPDATE barcode SET datereceived ='$p_date', actualacount = '".$icount."', status='COMPLETE' WHERE status='PENDING'";   
            $conn->query($sql) ;     
        } 
    ?>

检查您的$_POST['save']是否已设置。尝试在if内部使用echo或echo $_POST['save variable']。 - Abhishek Gurjar
1
定义无效。同时格式化您的代码。还要注意,您真的不想将JavaScript引入其中。只需在浏览器中使用PHP隔离测试您的MySQL查询。 - e4c5
在第二个查询中,您不需要转义SQL... 您只需要执行 actualacount ='$icount' 即可。 - GROVER.
1个回答

3

由于您的SQL存在错误,请尝试以下方法

$sql = "UPDATE barcode SET
        datereceived ='".$p_date."' , actualacount ='".$icount."' ,
        status='COMPLETE'  WHERE status='PENDING'";

除了我的Mysql计数器之外,一切都正常工作。无法获取值以更新表中的数据。 - codeSeven
在进行 SQL 更新之前,您应该检查 $p_date 和 $icount 的值。它返回什么?您可以使用 var_dump($variable) 来检查这个值。 - mamosek
布尔值假,如果我要更新两个或更多的项目怎么办? - codeSeven

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接