Mam dziwny i chyba rzadko spotykany problem


Później dane z formularza idą do weryfikacji do admina:
<?php if ($admin && $row['typ'] >= 5 && $row['typ'] != 15 && $row['typ'] != 16 && $row['typ'] != 17) { echo '<p> Weryfikacja: <a href="index.php?page=display&id=' . ((int) $_GET['id']) . '&action=zatwierdz" title="ZatwierdĽ"><img src="ikonki/zatwierdz.gif"border="0">zatwierdĽ</a> <a href="index.php?page=display&id=' . ((int) $_GET['id']) . '&action=odrzuc" title="Odrzuć"><img src="ikonki/usun.gif"border="0">odrzuć</a> </p>'; ?>
a nastepnie od pola 'typ' ma być odjęte -4 i problem jest w tym, że odejmuje zawsze dwa razy tyle, czyli odejmuje od 7-8 i mam -1 w mysql a powinno być 3 :/, jak wprowadze 2 zamiast 4 to bedzie dejmowało 4 :/ niestety przy kazdej wartości pola 'typ' musi byc odejmowane 4 dlatego nie moge zastapić tego 2. Oto kod w którym przerabiana jest weryfikacja:
<?php { switch ($_GET['action']) { case 'zatwierdz': { } else { } break; case 'odrzuc': { } else { } break; } } ?>
a oto efekt w bazie mysql:

mam nadzieje że jesno przedstawiłem problem... bardzo proszę o pomoc.
Pozdrawiam