2016-11-05 68 views
-1

我正在更新此問題以更好地闡明所尋找的內容。我將數組傳遞給應該更新購物車的函數。我有兩個變量,$isbn$formatQuantity如何將條件語句傳遞給mySql查詢

這裏是更新數據庫之前,我的問題,我需要檢查一些條件

  1. 檢查,如果$isbn存在,如果它不只是更新$formatQuantity,如果它不與$isbn作爲主鍵創建列

  2. $formatQuantity可能是平裝,精裝,或者電子書......我需要更新右列的數量,所以如果格式是簡裝我需要加1列平裝購買的現值..

這裏是我的代碼(詩我知道怎麼做的一切,但我不知道如何檢查與MySQL的條件):

<?php 
    function insertBook($db,$selection){ 
    $isbn; 
    $format; 


    foreach ($selection as $key => $value) { 
     $isbn=$key; 
     $format=$value; 
     $change= explode(":", $format) ; 
     $format=$change['0']; 


    } 


$query = "INSERT INTO cart (isbn, hardcover_purchased, softcover_purchased, ebook_purchased) 
      VALUES (':isbn', ':format', 0, 0)"; 

$statement = $db->prepare($query); 
$success = $statement->execute(); 
$statement->bindValue(':isbn', $isbn); 
$statement->bindValue(':format', $format); 
$statement->closeCursor(); 

if ($success) { 
    echo "section inserted using query insertNewSection_checkSuccess"; 
} 
else{ 
    echo "Unable to insert new section using query insertNewSection_checkSuccess"; 
} 
} 

?> 
+0

準備一個語句一次,用你的數組中的參數執行。藉助PDO,這非常簡單。目前尚不清楚您在此使用的是哪個界面。 – tadman

+0

該數組需要一些工作才能正確地進行迭代,但'execute()'確實需要它可以綁定的數組,因此如果數據的形狀正確,這可以節省大量工作。 – tadman

+0

@tadman我已經更新了這個問題,我已經完全重寫了它。我真的需要幫助,如何將條件插入到MySQL querry .. –

回答

1

如果我得到你的問題,你可以使用split()函數會根據字符串中出現的模式將字符串劃分爲不同的元素。 並在分割字符串後返回字符串數組。

+0

我已經更新了這個問題..請看看它,看看你能否幫助我。 –