Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] podwójne odejmowanie rekordu :/, gdzie jest błąd w php??
Kamil90
post
Post #1





Grupa: Zarejestrowani
Postów: 73
Pomógł: 0
Dołączył: 17.02.2008
Skąd: Toruń

Ostrzeżenie: (0%)
-----


Witam.
Mam dziwny i chyba rzadko spotykany problem (IMG:http://forum.php.pl/style_emoticons/default/wstydnis.gif) . Chodzi o to że mam formularz dodawania filmików, wprowadzam dane i wszystko jest ok. Pole 'typ' wynosi 7 tak jak być powinno...
(IMG:http://img159.imageshack.us/img159/9518/83638262bg6.jpg)

Później dane z formularza idą do weryfikacji do admina:
  1. <?php
  2. if ($admin && $row['typ'] >= 5 && $row['typ'] != 15 && $row['typ'] != 16 && $row['typ'] != 17)
  3. {
  4. echo '<p>
  5. Weryfikacja: <a href="index.php?page=display&amp;id=' . ((int) $_GET['id']) . '&amp;action=zatwierdz" title="ZatwierdĽ"><img src="ikonki/zatwierdz.gif"border="0">zatwierdĽ</a> <a href="index.php?page=display&amp;id=' . ((int) $_GET['id']) . '&amp;action=odrzuc" title="Odrzuć"><img src="ikonki/usun.gif"border="0">odrzuć</a>
  6. </p>';
  7. ?>


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:
  1. <?php
  2. if ($admin && isset($_GET['action']))
  3. {
  4.   switch ($_GET['action'])
  5.   {
  6.   case 'zatwierdz':
  7.     if (!mysql_query('update `stuff` set `typ` = `typ` - 4 where `id`=' . ((int) $_GET['id'])  ))
  8.     {
  9.       echo '<p>Nie udało się zaaktualizować rekordu.</p>';
  10.     }
  11.     else
  12.     {
  13.       echo '<p>Filmik został zatwierdzony poprawnie.</p>';
  14.     }
  15.     break;
  16.  
  17.   case 'odrzuc':
  18.     if (mysql_query('delete from `komentarze` where `stuff`=' . ((int) $_GET['id'])) &&
  19.     mysql_query('delete from `oceny` where `stuff`=' . ((int) $_GET['id'])) &&
  20.     mysql_query('delete from `stuff` where `id`=' . ((int) $_GET['id'])))
  21.     {
  22.       echo '<p>Filmik został poprawnie usuniety.</p>';
  23.     }
  24.     else
  25.     {
  26.       echo '<p>Nie udało się usunąć rekordów z tabeli.</p>';
  27.     }
  28.     break;
  29.   }
  30. }
  31. ?>


a oto efekt w bazie mysql:
(IMG:http://img530.imageshack.us/img530/6329/59122780hp6.jpg)

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

Pozdrawiam

Ten post edytował erix 21.01.2009, 16:25:44
Powód edycji: bbcode + ortografia
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.09.2025 - 03:16