Skip to content

Instantly share code, notes, and snippets.

@t-seannn
Last active November 14, 2019 17:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save t-seannn/17311900309ef8f95afef8be6d342e7e to your computer and use it in GitHub Desktop.
Save t-seannn/17311900309ef8f95afef8be6d342e7e to your computer and use it in GitHub Desktop.
<?php
class Database {
// DB Parameters
private $host = 'localhost';
private $db_name = 'tournamentProject';
private $username = 'root';
private $password = '';
private $conn;
// DB Connect
public function connect(){
$this->conn = null;
try {
$this->conn = new PDO('mysql:host=' . $this->host . ';dbname=' . $this->db_name,
$this->username, $this->password);
$this->conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e){
echo 'Connection Error:' . $e->getMessage();
}
return $this->conn;
}
}
?>
<?php
// Headers
header('Access-Control-Allow-Origin: *');
header('Content-Type: application/json');
include_once '../../config/Database.php';
include_once '../../models/Tournament.php';
// Instantiate DB & connect
$database = new Database();
$db = $database->connect();
// Instantiate tournament object
$tournament = new Tournament($db);
// Tournament query
$result = $tournament->read();
// Get row count
$num = $result->rowCount();
// Check if any tournaments
if ($num > 0){
// Post array
$tournament_arr = array();
$tournament_arr['data'] = array();
while($row = $ersult->fetch(PDO::FETCH_ASSOC)){
extract($row);
$tournament_event = array(
'name' => $name,
'date' => $date,
'location' => $location
);
// Push to "data"
array_push($tournament_arr['data'], $tournament_event);
}
// Turn to JSON & output
echo json_encode($tournament_arr);
} else {
// No tournament event available
echo json_encode(
array('message' => 'No Tournament Found.')
);
}
?>
<?php
class Tournament{
// DB Stuff
private $conn;
private $table = 'tournament';
// Properties
public $id;
public $name;
public $date;
public $location;
public $bracketsTotal;
// Constructor with DB
public function ___construct($db){
$this-> db = $db;
}
// Get Tournament
public function read(){
// Create query
$query = 'SELECT id, name, date, location, bracketsTotal
FROM
' . $this->table . '
ORDER BY
date DESC';
echo $query;
// Prepare statement
$stmt = $this->db->prepare($query);
// Execute query
$stmt->execute();
return $stmt;
}
}
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment