1) { $daysago = ($_GET['daysago'] * 1); } $tStats = getStat(1, $daysago); $yStats = getStat(2, $daysago); $wStats = getStat(3, $daysago); $mStats = getStat(4, $daysago); function getStat ($type, $daysago = 1) { switch ($type) { //Todays case 1: $where = " DATE_ADD(CURDATE(), INTERVAL -0 DAY) = DATE_FORMAT(solutions.dateModified,'%Y-%m-%d') AND DATE_ADD(CURDATE(), INTERVAL -0 DAY) = DATE_FORMAT(maps.dateCreated,'%Y-%m-%d') "; $statname = "Today's Best Overall:"; break; //Yesterdays case 2: $where = " DATE_ADD(CURDATE(), INTERVAL -$daysago DAY) = DATE_FORMAT(solutions.dateModified,'%Y-%m-%d') AND DATE_ADD(CURDATE(), INTERVAL -$daysago DAY) = DATE_FORMAT(maps.dateCreated,'%Y-%m-%d') "; $statname = "Yesterday's Best Overall:"; if ($daysago > 1) { $statname = "$daysago days ago's Best Overall."; } break; case 3: $where = " YEARweek(solutions.dateModified) = YEARweek(CURRENT_DATE) "; $statname = "This week, starting Sunday"; break; case 4: $where = " month(solutions.dateModified) = month(CURRENT_DATE) "; $statname = "This month's Best"; break; } $sql = "SELECT users.displayName as Name, SUM(solutions.moves) as Moves, timediff(MAX(dateModified), maps.dateCreated) as Timetaken, userData.wallColor, userData.wallEmblem, userData.displayColor, users.ID as userID FROM `maps` JOIN `solutions` ON maps.ID = solutions.mapID JOIN `users` ON solutions.userID = users.ID LEFT JOIN `userData` ON users.ID = userData.userID WHERE $where GROUP BY solutions.userID ORDER BY Moves DESC, MAX(dateModified) ASC "; $result = mysql_query($sql); return displayStats($result, $statname); } ?>
1) { $nextday = $daysago - 1; echo "Current Day"; echo "Next Day"; } $prevday = $daysago + 1; echo "Previous Day"; ?>
Simple Normal Complex Special Overall Week/Month
1) { $statname = "$daysago days ago's Best $name:"; } $stats = displayStats($result, $statname); $pastMap = pastMap($mapType, $daysago); $mapID = $pastMap; $mapcode = getMapCode($mapID); $map = GenerateMapByCode($mapcode); $sql = "SELECT `moves`, `displayName`, `solution` FROM `solutions`, `users` WHERE `mapID` = '$mapID' AND `userID` = users.ID ORDER BY `moves` DESC, `dateModified` ASC LIMIT 1"; $result = mysql_query($sql) or die(mysql_error()); if (mysql_num_rows($result) > 0) { list($bestMoves, $byName, $solution) = mysql_fetch_row($result); //echo "Best solution for this map: $bestMoves by $byName"; //$map = MergeMapSolution($map, $solution); //echo DisplayMap($map, $mapID); } echo '
'; echo "
"; echo '
'; echo $stats; echo '
'; echo '
'; echo "Best solution for this map: $bestMoves by $byName "; echo DisplayMap($map, $mapID, 'example', 2); echo '
'; echo '
'; } function displaystats($result, $caption = NULL) { //Get names. $headers .= "Rank"; $headers .= "Name"; $headers .= "Moves"; $headers .= "Time taken"; //Start table $r .= ""; $r .= ""; //Headers on the top. including Rank. $r .= ""; $r .= $headers; $r .= ""; $i = 1; while ($row = mysql_fetch_assoc($result)) { $rowcontent = ''; $mapid = $row['mapID']; $solution = $row['solution']; $wallColor = $row['wallColor']; $wallEmblem = $row['wallEmblem']; $displayColor = $row['displayColor']; $displayName = $row['Name']; $userID = $row['userID']; //Default if ($wallColor == '') $wallColor = '#666666'; $r .= "\n"; $r .= ""; $r .= ""; //$r .= "'; $r .= ''; $r .= ''; $r .= ""; $i++; } $r .= "
$caption
$i$displayName" . $row['Name'] . '' . $row['Moves'] . '' . $row['Timetaken'] . '
"; return $r; } function mysql_field_array( $query ) { $field = mysql_num_fields( $query ); for ( $i = 0; $i < $field; $i++ ) { $names[] = mysql_field_name( $query, $i ); } return $names; } // $sql = 'select columnname etc' // $result = mysql_query($sql); // while ($data[] = mysql_fetch_row($result)); // $data[1]['columnname'] == 'my data'; displayPastMaze(1, 'Simple', $daysago); displayPastMaze(2, 'Normal', $daysago); displayPastMaze(3, 'Complex', $daysago); displayPastMaze(4, 'Special', $daysago); ?>

Copyright © 2011 pathery.com