From 5ef16cc4a33bad8efb5feb45d78f9843039e8fc3 Mon Sep 17 00:00:00 2001 From: Horus3 Date: Thu, 3 Mar 2016 12:15:11 +0100 Subject: Bessere Fehlerbehandlung beim JSON erzeugen. --- intern/api/config.php | 3 +++ intern/api/db.php | 29 +++++++++++++++++++++++------ intern/api/termine.php | 19 ++++++++++++++++--- 3 files changed, 42 insertions(+), 9 deletions(-) create mode 100644 intern/api/config.php (limited to 'intern/api') diff --git a/intern/api/config.php b/intern/api/config.php new file mode 100644 index 0000000..728ff37 --- /dev/null +++ b/intern/api/config.php @@ -0,0 +1,3 @@ +exec('SET CHARACTER SET utf8'); +function get_db() { + require_once __DIR__ . '/config.php'; + require_once __DIR__ . '/secrets.php'; // beinhaltet die Parameter für die Datenbank + + try { + $db = new pdo($dsn, $db_user, $db_passwd); + } catch (Exception $e) { + error_log($e->getMessage()); + + unset($dsn); + unset($db_user); + unset($db_passwd); + + return false; + } + $db->exec('SET CHARACTER SET utf8'); + + unset($dsn); + unset($db_user); + unset($db_passwd); + + return $db; +} -unset($dsn); -unset($db_user); -unset($db_passwd); diff --git a/intern/api/termine.php b/intern/api/termine.php index 9c9d454..b5ff1db 100644 --- a/intern/api/termine.php +++ b/intern/api/termine.php @@ -1,12 +1,25 @@ true, "reason" => "Can't connect to the database", "build" => time() ) ) ); + exit; +} $res = $db->query('select termin, uhrzeit from proben where date(STR_TO_DATE(termin, "%d.%m.%Y")) > (SELECT CURDATE() );'); $proben = $res->fetchAll(PDO::FETCH_ASSOC); $res = $db->query('select termin,uhrzeit,beschreibung,anfahrt from konzert order by id desc limit 1;'); $konzert = $res->fetchAll(PDO::FETCH_ASSOC); -$output = array("konzert" => $konzert, "proben" => $proben); -header('Content-Type: application/json'); -echo( json_encode($output, JSON_PRETTY_PRINT) ); +$output = array("konzert" => $konzert, "proben" => $proben, "build" => time()); +$data = json_encode($output, JSON_PRETTY_PRINT); + +file_put_contents($json_file, $data); // speichert die JSON Datei für den Fall, dass es später Fehler gibt + +echo $file; -- cgit v1.2.3