2017-02-10 61 views
0

我用foreach()循環插入多行數據。但如果它的價值是稅或折扣,我不想插入特定的行。我怎麼做。插入多個條件

我的代碼:

<?php 
if(isset($_POST['finalsave'])) 
{ 
    foreach ($_POST['descr'] as $key => $descr) 
    { 
    $dept = mysql_real_escape_string($_POST['category']); 
    $idate = mysql_real_escape_string($_POST['idate']); 
    $desc1 = mysql_real_escape_string($descr); 
    $tags = mysql_real_escape_string($_POST['name'][$key]); 
    $location = mysql_real_escape_string($_POST['location'][$key]); 
    $war = mysql_real_escape_string($_POST['war'][$key]); 
    $qty = mysql_real_escape_string($_POST['qty'][$key]); 
    $rate = mysql_real_escape_string($_POST['rate'][$key]); 
    $finalamt = mysql_real_escape_string($_POST['finalamt'][$key]); 

    $sql2 = ("INSERT INTO `project`.`master_inventory` (`category`, `idate`, `descr`, `name`, `location`, `war`, `qty`, `rate`, `finalamt`) 
     VALUES ('".$dept."','".$idate."','".$desc1."','".$tags."','".$location."','".$war."','".$qty."','".$rate."','".$finalamt."')"); 
    $sqlins = mysql_query($sql2); 
    //echo $sql2; 
    } 
} 
?> 
+0

'如果其值稅或discount' - 哪個值? –

+0

對不起。我應該提到。它'$ _ POST [ 'DESCR']'@Pathik Vejani – vino

+0

然後只要把if條件之前'foreach'循環 –

回答

2

希望這將幫助你。

foreach ($_POST['descr'] as $key => $descr) 
    { 
    if(($descr !="tax")||($descr !="discount")) 
    { 
     //Write your logic here 
    } 
} 
+0

試過 – vino

+0

能否請您分享您$ _ POST [「DESCR」]輸出或鍵和值輸出。 –

+0

** taxIBookIpad mini **購買條目已成功保存 – vino

0

檢查值是否插入查詢稅前或折扣。

正如你所說的,在表descr字段包含的值賦給變量$desc1

<?php 
if(isset($_POST['finalsave'])) 
{ 
    foreach ($_POST['descr'] as $key => $descr) 
    { 
    $dept = mysql_real_escape_string($_POST['category']); 
    $idate = mysql_real_escape_string($_POST['idate']); 
    //this variable $desc1 will have the value tax or discount 
    $desc1 = mysql_real_escape_string($descr); 
    $tags = mysql_real_escape_string($_POST['name'][$key]); 
    $location = mysql_real_escape_string($_POST['location'][$key]); 
    $war = mysql_real_escape_string($_POST['war'][$key]); 
    $qty = mysql_real_escape_string($_POST['qty'][$key]); 
    $rate = mysql_real_escape_string($_POST['rate'][$key]); 
    $finalamt = mysql_real_escape_string($_POST['finalamt'][$key]); 
    //inserts only if $desc1 is not tax or discount 
    if(($desc1!="tax")||($desc1!="discount") 
    { 
    $sql2 = ("INSERT INTO `project`.`master_inventory` (`category`, `idate`, `descr`, `name`, `location`, `war`, `qty`, `rate`, `finalamt`) 
      VALUES ('".$dept."','".$idate."','".$desc1."','".$tags."','".$location."','".$war."','".$qty."','".$rate."','".$finalamt."')"); 
     $sqlins = mysql_query($sql2); 
    } 
} 
} 
?> 
+0

沒有運氣:(。插入所有的行,包括與稅務行。 – vino

+0

@vino這在你的插入查詢字段具有稅收或折扣值? – affaz

+0

@vido用'DESC1替換'descr' '在'if'條件 – affaz

1

taxdiscountif條件foreach循環是這樣的:

<?php 
if(isset($_POST['finalsave'])) 
{ 
    foreach ($_POST['descr'] as $key => $descr) { 
    // this you have to do 
    if(($descr != 'tax') || ($descr != 'discount')) 
    { 
     $dept = mysql_real_escape_string($_POST['category']); 
     $idate = mysql_real_escape_string($_POST['idate']); 
     $desc1 = mysql_real_escape_string($descr); 
     $tags = mysql_real_escape_string($_POST['name'][$key]); 
     $location = mysql_real_escape_string($_POST['location'][$key]); 
     $war = mysql_real_escape_string($_POST['war'][$key]); 
     $qty = mysql_real_escape_string($_POST['qty'][$key]); 
     $rate = mysql_real_escape_string($_POST['rate'][$key]); 
     $finalamt = mysql_real_escape_string($_POST['finalamt'][$key]); 

     $sql2 = ("INSERT INTO `project`.`master_inventory` (`category`, `idate`, `descr`, `name`, `location`, `war`, `qty`, `rate`, `finalamt`) 
     VALUES ('".$dept."','".$idate."','".$desc1."','".$tags."','".$location."','".$war."','".$qty."','".$rate."','".$finalamt."')"); 
     $sqlins = mysql_query($sql2); 
     //echo $sql2; 
    } 
    } 
} 
?> 
+0

我有三個值,如稅,iPad和iMac。它插入所有三行。我只想要插入iPad和iMac。 – vino

+0

謝謝。不過插入的所有行含稅:(對於'$ descr' – vino

+1

@vino打印的價值,但插入的所有行,包括與稅務行:( –