function checkFirstTour($plId, $date) { $lines = file("http://or.rttf.ru/players/$plId"); $count = 0; $tour_id = 0; $tour_date = 0; $is_new = 0; $dates = array(); foreach ($lines as $line) { $line = iconv("UTF-8", "WINDOWS-1251", $line); if (strpos($line, 'a name="tour') > -1) { $tour_id = sstr($line, 'a name="tour', '"'); $tour_date = sstr($line, '">', ' '); $tour_date = dateToInt($tour_date); } else if (strpos($line, 'на турнире: <b>') > -1) { $pl_rating = sstr($line, ': <b>', '<'); } else if (strpos($line, '<td class="delta"') > -1) { $pl_delta = sstr($line, '">', '<'); $dates[] = array($tour_date, $tour_id, $pl_rating, $pl_delta); } //echo "<b>".(++$count)."</b>".htmlspecialchars($line)."<br>"; } sort($dates); if ($dates[0][0] >= $date) { if (count($dates) == 1) { // return lonely tour, rating = rating + delta, is_new = 2 $r = array($dates[0][0], $dates[0][1], round($dates[0][2] + $dates[0][3]), 2); } else { // return next tour, rating = rating, is_new = 1; $r = array($dates[1][0], $dates[1][1], $dates[1][2], 1); } echo "<b style='color:blue'>Fixed:</b> $r[0], $r[1], $r[2], $r[3]<br>"; return $r; } foreach($dates as $dt) { if ($dt[0] >= $date) { // return tour, where tour_date >= date, rating = rating, is_new = 0; echo "<b style='color:blue'>Fixed:</b> $dt[0], $dt[1], $dt[2], 0<br>"; return array($dt[0], $dt[1], $dt[2], 0); } } $dt = $dates[count($dates)-1]; $r = array($dt[0],$dt[1], round($dt[2] + $dt[3]), 3); echo "<b style='color:blue'>Fixed:</b> $r[0], $r[1], $r[2], $r[3]<br>"; return $r; }
$query = mysql_query("SELECT tour_id FROM `rttf__cup_games` WHERE `cup_id`=$cup_id GROUP BY tour_id") or die(mysql_error()); $count = 0; $tour_dates = array(); while ($result = mysql_fetch_assoc($query)) { $tour_id = $result['tour_id']; $tour_dates[$tour_id] = 1; } $lines = file("http://or.rttf.ru/tournaments/type217"); $count = 0; foreach ($lines as $line) { $line = iconv("UTF-8", "WINDOWS-1251", $line); if (strpos($line, '<td><a href="tournaments/') > -1) { $tour_id = sstr($line, '<td><a href="tournaments/', '"'); $tour_date = sstr($line, '">', ' '); $tour_date = dateToInt($tour_date); if ($tour_dates[$tour_id]) { $tour_dates[$tour_id] = $tour_date; // update mysql_query("UPDATE `rttf__cup_games` SET tour_date=$tour_date WHERE tour_id=$tour_id") or die(mysql_error()); echo "<b>".(++$count)."</b>) $tour_id, $tour_date<br>"; } // echo "<b>".(++$count)."</b>".htmlspecialchars($line)."<br>"; } } $elapsed_time = number_format(microtime(true) - $start_time, 3); $m = memoryUsage($_m); $_m = $_m > 0 ? " (memory before the script run: <b>$start_memory</b>)" : "";