2017-01-23 40 views
0

enter image description here我想插入多个文本框只有两个名称。在所有这些texboxes我有名称项目[]和数量[]。我试图嵌套foreach循环,但增加了比预期更多的值。问题是$ _POST ['qty']。我可以选择和添加项目[],但我不能添加数量整数值!如何插入两个不同名称的多个文本框?

<div class="col-md-12 diff"> 
        <div class="col-md-4"> 
         <p>Select Item</p> 
         <input style="color:black;" type="text" class="form-control items" name="items[]" placeholder="Search..."> 
        <div class="side"></div> 
        </div> 
        <div class="col-md-2"> 
         <p>QTY</p> 
         <input id="pats_input" class="form-control pats_tb" type="text" name="qty[]" placeholder="NO:"> 
        <div class="side"></div> 
        </div> 
       </div> 
       <div class="col-md-12 diff"> 
        <div class="col-md-4"> 
         <p>Select Item</p> 
         <input style="color:black;" type="text" class="form-control items" name="items[]" placeholder="Search..."> 
        <div class="side"></div> 
        </div> 
        <div class="col-md-2"> 
         <p>QTY</p> 
         <input id="pats_input" class="form-control pats_tb" type="text" name="qty[]" placeholder="NO:"> 
        <div class="side"></div> 
        </div> 
       </div> 


function issueToEmployee(){ 
      global $conn; 
      if(isset($_POST['pats']) && $_POST['pats'] !="" && isset($_POST['items']) && $_POST['items'] !="" && isset($_POST['qty'])){ 
       $perstat = new getPerstat(); 
       //get employee pats 
       $perstat->getPats($_POST['pats']); 
       $stock = new StockTable(); 
       $qty = $_POST['qty']; 
       foreach($_POST['items'] as $item){ 
        foreach($qty as $q){ 
         if(!empty($item) && !empty($q)){ 
          $stock->getItemByName($item); 
         $sql = $conn->prepare("INSERT INTO issues (empid, itemid) VALUES('$perstat->id','$stock->itemid')"); 
         $sql->execute(); 
         } 
        } 

       } 

       return true; 

      }else{ 
       return false; 
      } 

回答

0

我想你想点的数量像这样的项目:

$items = $_POST['items']; 
$qty = $_POST['qty']; 
foreach($items as $i => $item) 
{ 
if(!empty($item) && (isset($qty[$i]) && !empty($qty[$i]))) 
{ 
    $stock->getItemByName($item); 
    $sql = $conn->prepare("INSERT INTO issues (empid,itemid) VALUES('$perstat->id','$stock->itemid')"); 
    $sql->execute(); 
    } 

} 

由于项目是对应于它们的数量(纠正我,如果我错了)

+0

是,$项目= $ _ POST [“项目”],因为输入的名称是项目[],一个添加上述值nd $ qty = $ _ POST ['qty'],输入qty []。 – MaxPower

+0

我编辑了代码,希望它可以帮助 – cjatstackoverflow

0

我发现如何从多个输入字段项目[]和数量[],

for($i = 0; $i < 8 ; $i++){ 
         //$id = $_POST['id'][$i]; 
        $description = $_POST['items'][$i]; 
         $qty = $_POST['qty'][$i]; 
         $date = $_POST['date']; 
         if(!empty($qty)){ 
         $stock->getItemByName($description); 
         $sql = $conn->prepare("INSERT INTO issues (empid, itemid, qty, date) VALUES('$perstat->id','$stock->itemid','$qty','$date')"); 
          $sql->execute(); 

         } 

       } 
相关问题