Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 45 Pomógł: 0 Dołączył: 15.09.2008 Ostrzeżenie: (0%)
|
Cześć,
stworzyłem stronę z konkursami online, jest oparta o chat, w którym użytkownicy wpisują odpowiedzi. Jeżeli trafią jedną z trzech opcji, użytkownik wygrywa. W takiej sytuacji do tabeli z wiadomościami była dodawania nowa, a później wykonywał się UPDATE w tabeli z konkursami, żeby ustawić zwycięzcę, jeżeli odpowiedź jest prawidłowa. Niestety, ostatnio są problemy - skrypt dwa razy dodał prawidłową odpowiedź do chatu, ale nie ustawił zwycięzcy i wygrała osoba, która podała odpowiedź jako trzecia. Niestety kto inny zajmuje się administracją - nie mogę założyć dodatkowych logów itp. Zastanawiam się, jak zabezpieczyć skrypt przed taką sytuacją. Korzystam z mysqli, obydwie tabele na silniku InnoDB. Uwarunkowałem dodanie wiadomości do chatu od tego, czy wykonano UPDATE, ale obawiam się, że to za mało. Poniżej fragment pliku odbierającego ajaxowe zapytania:
Czy ktoś mógłby podać jakąś wskazówkę co jeszcze można zrobić? |
|
|
|
Kikert Integralność danych przy jednoczesnym dostępie 18.07.2012, 10:41:04
Crozin 1. Wszelkie dane modyfikujące stan bazy danych pow... 18.07.2012, 11:18:26
Kikert Tak, wiadomość ma się wysyłać za każdym razem, bo ... 18.07.2012, 11:34:03
Crozin [SQL] pobierz, plaintext LOCK TABLE tbl_contests R... 18.07.2012, 12:46:50
Kikert Wielkie dzięki, zaraz zobaczę, jak to śmiga
Jesz... 18.07.2012, 12:52:23
Crozin W przypadku gdy na tabelę jest założona blokada in... 18.07.2012, 23:12:58 ![]() ![]() |
|
Aktualny czas: 19.12.2025 - 13:18 |