Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果数据不可用,则更新_Php_Mysqli - Fatal编程技术网

Php 如果数据不可用,则更新

Php 如果数据不可用,则更新,php,mysqli,Php,Mysqli,我不熟悉PHP和Mysql。我有一个表(库存),我正在尝试向其中插入数据,如果相同的数据已经存在,那么必须根据用户输入更新相同的数据 $sql=mysqli_query($conn, "SELECT * FROM stock WHERE medName = $medName"); if (mysqli_num_rows($sql) > 0) { $sqlUpdate="update stock set qunty= qunty +'$qunty'"; mysql

我不熟悉PHP和Mysql。我有一个表(库存),我正在尝试向其中插入数据,如果相同的数据已经存在,那么必须根据用户输入更新相同的数据

    $sql=mysqli_query($conn, "SELECT * FROM stock WHERE medName = $medName");

if (mysqli_num_rows($sql) > 0) 
{
    $sqlUpdate="update stock set qunty= qunty +'$qunty'";
    mysqli_query($conn,$sqlUpdate);
} else {
    $sqlInsert="insert into stock set medName= '$medName', qunty= '$qunty',phyLoc= '$phyLoc',printPrice= '$printPrice',menufName= '$menufName'";
    mysqli_query($conn,$sqlInsert);
}
但上面的代码仅在值不存在时存储该值,而在数据已存储时不更新数据。谁来帮帮我


谢谢大家。

试试这段代码。您的查询中有一些关于报价的问题。您还需要更新时的where条件

$sql = mysqli_query($conn, "SELECT * FROM stock WHERE medName = '$medName'");

$sqlQuery="insert into stock set medName= '$medName', qunty= '$qunty',phyLoc= '$phyLoc',printPrice= '$printPrice',menufName= '$menufName'";   
if (mysqli_num_rows($sql) > 0)  {
    $sqlQuery="update stock set qunty= qunty + $qunty WHERE medName = '$medName'";
}

mysqli_query($conn,$sqlQuery);

您是否检查了
$qunty
是否具有正确的/预期的值?(进行
var_转储($quanty);
验证)是$Quanty具有预期值