coincido, aunque es redundante tanto usar un array extra como usar la misma tabla para generar el sql, en todo caso siguiendo tu ejemplo...
Código PHP:
Ver originalforeach($_POST as $setname=>$value){
mysql_query("UPDATE settings SET set_value='$value' WHERE set_name='$setname'"); }