2015-11-26 31 views
1

我想改變我的數據庫值相同的ID。在我的數據庫中的多個值它救了這樣更新使用PHP

ID     COLOR 
1     RED 
1     BLUE 
1     GREEN 

我要更新所有ID這在我的顏色分類爲1

現在我想這樣

Color1 : RED to BLACK 
Color2 : BLUE to YELLOW 
Color3: GREEN To WHITE 

更新它但是當我點擊更新..結果變成這樣

Color1 : WHITE 
Color2 : WHITE 
Color3: WHITE 

我該如何保存修復程序?

這是我的代碼。

HTML FORM

<div class='control-group'> 
    <div style='margin-left: 25px; margin-top:-5px;'> 
    <label style='display: inline-block !important; vertical-align: middle; float: left; font-weight: bold; margin-left:40px;'> Color Combination $x &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</label> 

    <div class='controls'> 
    <select name='color1[]' class='form-control' id='color1' onchange='getcolor()'><option value=''>$test</option> 
    "; 

$statement = $db->prepare("SELECT * FROM color order by colorName ASC"); 
    $statement->execute(); 

    while($rows = $statement->fetch(PDO::FETCH_ASSOC)) { 
echo "<option value='" .$rows['colorName']. "'>" . $rows['colorName'] . " - " . $rows['colorCode'] ."</option>"; 
     } 

echo "</select>"; 

我SUBMIT CODES

if (isset($_POST['submit'])) { 

$color1 = $_POST['color1']; 
$count = count($color1); 

for ($x = 0; $x <=$count; $x++) { 

    if($color2[$x] == "") 
    { 
    $savecolor = $color1[$x]; 

$stmt = $db->prepare('UPDATE productcolor set colorName = :color WHERE productinformationID=:productinformationID'); 
$stmt->execute(array(':color' => $savecolor, ':productinformationID' => $prodID)); 
    } 
} 

} 

但是,當我回聲$ savecolor = $ COLOR1 [$ X];它顯示我選擇的顏色,但是當它保存它不是。

+0

對於相同的ID,你應該找到一些獨特的更新內容,在你的情況下只有 - >顏色。因此,在條件 – Thamilan

+0

應該有數據庫中的任何唯一列來更新值 –

+0

請添加顏色試試這個:http://stackoverflow.com/questions/41833172/update-multiple-author-in-php-but-not-same -value/41833897#41833897 –

回答

1

您將需要AND條件來指定應更新哪種顏色。

例如:

UPDATE productcolor 
SET colorName = :color 
WHERE productinformationID=:productinformationID 
AND colorName = :colorName 

:colorName應的顏色被改變。

+0

它不起作用 – user5598179

+0

你可以發佈你是如何實現的? – Samir

+0

我有一個問題..在顏色名稱在哪裏條件,我應該得到顏色名稱是在顯示顏色正確嗎?像這樣$ color1 = $ row ['colorName']?我對嗎? – user5598179