MYSQL güncelleme, PHP dizi ile silmek, değiştirmek

0 Cevap php

I have a query I need to run on a $_POST array with php it's quite simple as it takes all the values in the array then runs a query for each of the values which updates the database, here is the tricky part: As the array is dependent of checkboxes selected by the user the query has to either Update, Replace or remove values in DB dependent on what is in the $_POST array. I've only been able to have the query successfully run the last value in the array.
I've tried both 'REPLACE INTO' and 'INSERT IGNORE INTO' but with no luck. I'm starting to think much more complex coding is going to be needed :( here's what I have so far:

foreach($params['text'] as $boilertext)
{
    $sql = 'UPDATE '._DB_PREFIX_.'boilertexts 
            SET id_product="'.pSQL($boilertext).'" WHERE id_text="'.$params['id'].'"';
    if(!Db::getInstance()->Execute($sql))
    {
        echo mysql_error();
    }
}

EDIT:

Bu ben alıyorum sonrası params olduğunu:

Array ( 
       [text] => Array ( [0] => 8 [1] => 6 [2] => 10 ) // the Text ID i'm updating
       [textValue] => "Some text that I'm adding to another DB table"
       [id] => 28 // The ID that all the params from ['text'] are linked too
       [update] => update // Name of the submit button I'm using for form processing
     ) 

Benim sorun foreach (her bir sorgu için bir sayımı yazdırarak bunu test) her sorgu için kez SQL x miktarını çalışmadığı halde, sadece ['text'] dizideki son değeri eklemek olacaktır. Ayrıca bu dizide değilse DB metin id kaldırmak / güncellemek için görünmüyor

0 Cevap