IvanVukoja Posted July 25, 2015 Share Posted July 25, 2015 Can you help me when to run page when i atempt i get wsod. I switched on error reporting, but still do not know what the problem is. I need it for a project at school bracket.php. can you please help me how to fix it. tournament.zip Quote Link to comment Share on other sites More sharing options...
scootstah Posted July 25, 2015 Share Posted July 25, 2015 (edited) Where did you turn on error reporting? It must be set in the php.ini to capture certain fatal errors, otherwise the error occurs before the code to turn on errors is executed. In your php.ini make sure display_errors is set to On and error_reporting is set to -1 And make sure to restart Apache after the changes. Edited July 25, 2015 by scootstah Quote Link to comment Share on other sites More sharing options...
IvanVukoja Posted July 25, 2015 Author Share Posted July 25, 2015 i jusing xampp and i did it in xampp/php/php.ini Quote Link to comment Share on other sites More sharing options...
scootstah Posted July 25, 2015 Share Posted July 25, 2015 Can you post that file here please? Make sure to use the code tags by clicking the <> button. Quote Link to comment Share on other sites More sharing options...
IvanVukoja Posted July 26, 2015 Author Share Posted July 26, 2015 bracket.php <?php // PHP Class bracket // Bracket builder for GotGames // Author Benjamin Thomas // October 2009 class bracket { //Bring In Database Details From Include.PHP var $username = DB_USER; var $password = DB_PASS; var $database = DB_NAME; //Init Class Variables var $tournament_name; var $tournament_size; var $tournament_format; var $tournament_id; var $result_servers; var $result_stvs; var $result_matches; var $result_teams; //************************************************************************************* // schedule bracket // Input - The tournament ID used to identify which tournament we are scheduling for // Operation - This constructor reads the required information from the databas and assigns the following class values: // tournament_name; // tournament_size; // tournament_format; // tournament_id; // result_servers; // result_stvs; // result_matches; // result_teams; //************************************************************************************* function bracket($tourn_id) { //Save the Tournament ID $this->tournament_id = $tourn_id; //Collect All Required Information To Draw a Bracket mysql_connect('localhost', $this->username, $this->password); \mysql_select_db($this->database) or die("Unable to select database"); $query = "SELECT * FROM tms_tournament WHERE id = " . $tourn_id; $result_tournament = mysql_query($query) or die('Error, query failed'); $row = mysql_fetch_assoc($result_tournament); $this->tournament_name = $row['name']; $this->tournament_size = $row['size']; $this->tournament_format = $row['format']; mysql_free_result($result_tournament); //read and save information from database $query = "SELECT * FROM tms_servers WHERE id_tournament = " . $tourn_id; $this->result_servers = mysql_query($query) or die('Error, query failed'); $query = "SELECT * FROM tms_stvs WHERE id_tournament = " . $tourn_id; $this->result_stvs = mysql_query($query) or die('Error, query failed'); $query = "SELECT * FROM tms_matches WHERE id_tournament = " . $tourn_id; $this->result_matches = mysql_query($query) or die('Error, query failed'); $query = "SELECT * FROM tms_teams_" . $tourn_id . " WHERE id_tournament = " . $tourn_id; $this->result_teams = mysql_query($query) or die('Error, query failed'); } //************************************************************************************* // Function draw // Operation - Called to display a single elimination bracket //************************************************************************************* function draw( ) { $total_rounds = log($this->tournament_size, 2) + 1; //total rounds $row = array( ); $col = array( $row ); //create a data type to hold our bracket information //Generate a datastructure to hold all the information required to layout the bracket for($i = 1; $i <= $total_rounds; $i++) { $round_matches = $this->getmatches($i); $matches = pow(2, $total_rounds - $i); //calc how many matches for this round $interval = pow(2, $i); // calc the interval for layout spacing $offset = pow(2, $i - 1); // each round is offset by a differnt amount to form the bracket pyramid for($c = 1; $c <= ($this->tournament_size * 2) + 1; $c++) { if($c < $offset) { // blank space $col[$i][$c] = 0; } //$c < $offset elseif($c > (($this->tournament_size * 2) + 1) - $offset) { // blank space $col[$i][$c] = 0; } //$c > (($this->tournament_size * 2) + 1) - $offset elseif($c == $offset) { if($i == $total_rounds) { //No match but tournament winner $col[$i][$c] = "Champion"; } //$i == $total_rounds else { //print a team here $tmp_array = array_shift($round_matches); $col[$i][$c] = $tmp_array['print_team']; } } //$c == $offset elseif((($c - $offset) % $interval) == 0) { //print a team here $tmp_array = array_shift($round_matches); $col[$i][$c] = $tmp_array['print_team']; } //(($c - $offset) % $interval) == 0 elseif($c == ($offset * 2)) { //print match here $col[$i][$c] = "Match" . $tmp_array['id']; } //$c == ($offset * 2) elseif((($c - $offset * 2) % ($interval * 2)) == 0) { //print match here $col[$i][$c] = "Match" . $tmp_array['id']; } //(($c - $offset * 2) % ($interval * 2)) == 0 else { $col[$i][$c] = 0; // blank space } print("<br>"); //$c = 1; $c <= ($this->tournament_size * 2) + 1; $c++ // layout the bracket using html tables and the data struct created above: col print("<table width='100%' border='5'>"); print("<tr>"); for($i = 1; $i <= $total_rounds - 1; $i++) { print("<th>Round " . (string) $i . "</th>"); } //$i = 1; $i <= $total_rounds - 1; $i++ print("</tr>"); for($c = 1; $c <= ($this->tournament_size * 2); $c++) print("<tr>"); for($i = 1; $i <= $total_rounds + 1; $i++) if(strcmp(substr($col[$i][$c], 0, 5), "Match") == 0) { $tmp_array = $this->getmatch(substr($col[$i][$c], 5)); $datetime = new DateTime($tmp_array['timestamp']); print("<td align='center' bgcolor='#FFE4E1'><table><tr><td align='center'>" . $datetime->format("D, jS F Y gA") . "</td></tr><tr><td align='center'>stv - " . $this->getstvdetails($tmp_array['id_stv']) . "</td></tr></table> </td>"); } //strcmp(substr($col[$i][$c], 0, 5), "Match") == 0 elseif(strcmp(substr($col[$i][$c], 0, 5), "Teams") == 0) { print("<td align='center' bgcolor='#dddddd'>" . $this->getteamname(substr($col[$i][$c], 5)) . "</td>"); } //strcmp(substr($col[$i][$c], 0, 5), "Teams") == 0 elseif($col[$i][$c]) { print("<td align='center' bgcolor='#dddddd'>" . $col[$i][$c] . "</td>"); } //$col[$i][$c] else { print("<td height='40'></td>"); } //$i = 1; $i <= $total_rounds + 1; $i++ print("</tr>"); //$c = 1; $c <= ($this->tournament_size * 2); $c++ print("</table>"); //$i = 1; $i <= $total_rounds; $i++ //************************************************************************************* // Function getmatch // Input - match_id // Operation - Retrives all the information saved for the parsed match_id //************************************************************************************* function getmatch($match_id) { $query = "SELECT * FROM tms_matches WHERE id = " . (string) $match_id; $result = mysql_query($query); $row = mysql_fetch_assoc($result); mysql_free_result($result); return $row; } //************************************************************************************* // Function getteamname // Input - team_id // Operation - Returns the name of the team with the parsed team ID //*********************************************************************************** ** function getteamname($team_id) { $query = "SELECT name FROM tms_teams_" . (string) $this->tournament_id . " WHERE id = " . (string) $team_id; $result = mysql_query($query) or die('Error, query failed'); return mysql_result($result, 0); } //************************************************************************************* // Function getstvdetails // Input - stv_id // Operation - Returns the IP Address of the parsed stv id //************************************************************************************* function getstvdetails($stv_id) { $query = "SELECT address FROM tms_stvs WHERE id = " . (string) $stv_id; $result = mysql_query($query); return mysql_result($result, 0); } //************************************************************************************* // Function getmatches // Input round_no // Operation - Returns an array of all the matches for the parse round. The array is sorted by the position field. //************************************************************************************* function getmatches($round_no) { $matches_avail = array( ); $tmp_row = array( ); $query = "SELECT * FROM tms_matches WHERE id_tournament = " . $this->tournament_id . " AND round = " . (string) $round_no . " ORDER BY position"; $result = mysql_query($query); while($row = mysql_fetch_assoc($result)) { $tmp_row = $row; if($row['status'] == 1) { $row = array_merge($row, array( "print_team" => "Winner of " . $row['id_match_parent_a'] )); } //$row['status'] == 1 else { $row = array_merge($row, array( "print_team" => "Teams" . $row['id_team_a'] )); //team A } $matches_avail[ ] = $row; $row = $tmp_row; if($row['status'] == 1) { $row = array_merge($row, array( "print_team" => "Winner of " . $row['id_match_parent_b'] )); } //$row['status'] == 1 else { $row = array_merge($row, array( "print_team" => "Teams" . $row['id_team_b'] )); //team B } $matches_avail[ ] = $row; unset($tmp_row); } //$row = mysql_fetch_assoc($result) return $matches_avail; } //************************************************************************************* // destructor // Operation - Frees memory held by SQL result sets //************************************************************************************* function __destruct( ) { mysql_free_result($this->result_servers); mysql_free_result($this->result_stvs); mysql_free_result($this->result_matches); mysql_free_result($this->result_teams); mysql_close(); } } }}} ?> tms_tournament CREATE TABLE `tms_tournament` ( `id` int(11) NOT NULL auto_increment, `id_game` int(11) NOT NULL, `name` varchar(128) collate latin1_general_ci NOT NULL, `format` varchar(16) collate latin1_general_ci NOT NULL, `starttime` varchar(19) collate latin1_general_ci NOT NULL, `size` int(11) NOT NULL, `status` int(11) NOT NULL, `frequency` varchar(16) collate latin1_general_ci NOT NULL, `seeded` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=1830 DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci PACK_KEYS=1 tms_stvs CREATE TABLE `tms_stvs` ( `id` int(11) NOT NULL auto_increment, `id_game` int(11) NOT NULL, `id_tournament` int(11) NOT NULL, `address` varchar(32) collate latin1_general_ci NOT NULL, `rcon` varchar(32) collate latin1_general_ci NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=60 DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci Quote Link to comment Share on other sites More sharing options...
scootstah Posted July 26, 2015 Share Posted July 26, 2015 I meant your php.ini Quote Link to comment Share on other sites More sharing options...
Solution mac_gyver Posted July 26, 2015 Solution Share Posted July 26, 2015 the file of code in post #5 isn't running any code. that's just the class definition. browsing to that file WON'T produce any output. you would need to include/autoload that file, make an instance of that class, and reference the class methods/properties of that class. Quote Link to comment Share on other sites More sharing options...
IvanVukoja Posted July 29, 2015 Author Share Posted July 29, 2015 thank you Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.