Tralasciando la form, la parte rilevante di quello che chiedi è la gestione di MySQL.

La prima imprecisione che vedo è l'uso di addslashes(): i dati da inviare a MySQL devono passare per mysql_escape_string() (o meglio mysql_real_escape_string() se hai la risorsa connessione), non da addslashes(). Inoltre, i dati che ricevi dai post possono essere già slashati se la direttiva 'magic_quotes_gpc' è on, per cui scriverei una funzione preventiva:

Codice PHP:
function prepareSqlText(&$gpc) {
    
get_magic_quotes_gpc() && $gpc stripslashes($gpc);
    
$gpc mysql_escape_string($gpc);

Il secondo errore è che tratti i dati come entità unica mentre in realtà sono vettori (se la form è corretta), quindi:

Codice PHP:
function prepareSqlVar(&$var) {
    if (
is_array($var)) {
        
array_walk($var'prepareSqlVar');
    } else {
        
prepareSqlText($var);
    }

Terzo, usi il comando SQL errato per "inserire" i dati: UPDATE serve per modificarli (o sovrascriverli, come dici tu):

Codice PHP:
// Prepara TUTTI i post per MySQL
prepareSqlVar($_POST);

// Questi i campi da inserire nella tabella
$fields = array('id''marca''mod''col''orig''disp''prezzo''prezzoaz''prezzoriv');

// Questi i valori
for ($n 0$n count($_POST['id']); ++ $n) {
    foreach (
$fields as $field) {
        
$row[$field] = $_POST[$field][$n];
    }
    
$values[$n] = '(' implode(','$row) . ')';
}

// Questa la query
$query 'INSERT INTO tbl_prodotti (' implode(','$fields) . ') VALUES ' implode(','$values);

// Questo per vedere come è fatta la query insert con più righe
echo "<pre>$query</pre>";

// Esecuzione della query
mysql_query($query) || die(mysql_error());