mam dwie następujące tabele: turnieje_zapisy (pola: nazwa_turnieju,zawodnik) oraz turnieje_pary (pola: nazwa_turnieju,gracz1,gracz2). Ogólnie chodzi o to, że do tabeli turnieje_zapisy zapisywane są nazwiska ludzi jedno pod drugim, którzy chcą wziąć udział w turnieju, w tabeli turnieje_pary wylosowane do gry. Dobór w pary wygląda tak, że sprawdzam, ile zapisanych jest w turnieje_zapisy, i pierwszą połowę zapisanych przenoszę do turnieje_pary (gracz1) za pomocą INSERT INTO ... . Drugą połówę chciałbym UPDATE'ować do kolumny gracz2. Problem jest w tym, że UPDATE mi źle działa, a konkretnie LIMIT - jeśli np. pętla biegnie od 8 do 4, to zamiast UPDATE'ować rekordy z kolejnymi wartościami LIMIT $i,1, on leci jak przez sito, po czym 4 razy UPDATE'uje ten sam rekord, w tym przypadku ten, który jest pod LIMIT 4,1. Tak jakby w kolejnych przebiegach pętli $i wcale nie było zmniejszane wewnątrz zapytania.
$r1 = mysql_query("SELECT * FROM turnieje_zapisy WHERE nazwa_turnieju='$this->tournament'")or die(mysql_error()); $max = $count-1; if($count % 2 != 0) // jeśli liczba zapisanych jest nieparzysta, to dopisuję 'kreskowy' rekord, aby było parzyście { mysql_query("INSERT INTO turnieje_zapisy (nazwa_turnieju,zawodnik) VALUES ('$this->tournament','---')"); } for($i=$max; $i>=$interval; $i--) { mysql_query("UPDATE turnieje_pary SET gracz2=(SELECT zawodnik FROM turnieje_zapisy WHERE nazwa_turnieju='$this->tournament' LIMIT ".$i.",1) WHERE nazwa_turnieju='$this->tournament' LIMIT ".$i)or die(mysql_error()); }
Proszę o podpowiedź
Z góry dziękuję