2017-10-21 61 views
-1

我想用+ =更改单元格值,然后更新它。但程序添加这个值并创建一个新行,我只需要添加到当前。更改数据库中的单元格值。 Yii2

`

while (($row = fgetcsv($handle, 100, ',')) !== false) { 
         $wareHouse = Warehouse::find()->all(); 
         $products = Products::find()->all(); 
         $createBoth = true; 
         foreach ($wareHouse as $wr) 
         { 
          foreach ($products as $prod) 
          { 
           if ($prod->product_name==$row[0]&&$prod->warehouse_id==$wr->id&&$wr->warehouse_name==$row[2]){ 
            $prod->qty+=$row[1]; 
            $prod->update(); 
            $createBoth=false; 
           } 
          } 
         } 

`

+0

更新函数不会创建行......检查得更好。如果您有其他代码插入代码.. – scaisEdge

回答

0

你可以试试这个;

while (($row = fgetcsv($handle, 100, ',')) !== false) { 
     $wareHouse = Warehouse::find()->all(); 
     $createBoth = true; 
     foreach ($wareHouse as $wr) { 
      if ($wr->warehouse_name == $row[2]): 
       $prod = Products::find(['product_name' => $row[0], 'warehouse_id' => $wr->id])->one(); 
       $prod->qty = $prod->qty + $row[1]; 
       $prod->update(); 
       $createBoth = false; 
      endif; 
     } 
    } 
相关问题