ładniej i uniwersalniej (bo można do wszystkiego nadać inną wartość domyślną):
$defaults = Array(
'field_0' => 0,
'field_1' => 0,
'field_2' => 0
);
$_POST += $defaults;
echo (int)$_POST['field_0'];
ale nie o to chodziło autorowi tylko żeby update'owały się tylko podane pola z tego co zrozumiałem
czyli musisz dynamicznie składać zapytanie, jak masz np:
UPDATE fajki.papierosy SET ino=?, byd=?, swi=? WHERE nazwa=?
to musisz dynamicznie dodawać pole do SET te które chcesz ustawić
ładnie będzie dodać sobie pola do tablicy a potem złączyć w zapytanie:
$pola = Array();
if (!empty($_POST['ino'])) $pola[] = 'ino=' . (int)$_POST['ino'];
if (!empty($_POST['swi'])) $pola[] = 'swi=' . (int)$_POST['swi'];
// itp... to sobie ładnie możesz opakować w funkcję albo pętlę żeby się nie powtarzać
$sql = 'UPDATE fajki.papierosy SET ' . implode(', ', $pola) . ' WHERE nazwa=?';
btw - uważaj naprawdę na mysql injection. Najlepiej użyj chociaż jakiegoś PDO
. Jak widzisz jedna luka pozwala na wykonanie dowolnego zapytania select - byłem w stanie wyciągnąć nazwę bazy, tabel, nazwy kolumn, strukturę tablicy i wszystko inne