$sql_todays_menus = <<<TODAYSMENUS SELECT *, date_format(valid_from, '%k:%i') as valid_from_hour, date_format(valid_to, '%k:%i')as valid_to_hour FROM menu WHERE place_id = :place_id AND DATE(valid_from) <= CURDATE() AND valid_to > NOW(); TODAYSMENUS; //SQL Template to retrive todays menus $sql_tomorrows_menus = <<<TOMMOROWSMENUS SELECT *, date_format(valid_from, '%k:%i') as valid_from_hour, date_format(valid_to, '%k:%i')as valid_to_hour FROM menu WHERE place_id = :place_id AND DATE(valid_from) <= DATE(NOW() + INTERVAL 1 DAY) AND DATE(valid_to) >= DATE(NOW() + INTERVAL 1 DAY); TOMMOROWSMENUS; //SQL Template to retrive tomorrows menus try { $dbh = new LunchboxPDO(); $today_statement = $dbh->prepare($sql_todays_menus); $tomorrow_statement = $dbh->prepare($sql_tomorrows_menus); } catch (LunchboxException $e) { $response['description'] = 'Nie udało się pobrać aktualnych menu z bazy danych. Spróbuj później ponownie, a jeżeli problem będzie dalej występować daj nam o tym znać.'; print_results($response, $ajax); } //Connect to DB foreach ($restaurants as $restaurant) { $today_statement->execute(array(':place_id' => $restaurant['place_id'])); $tomorrow_statement->execute(array(':place_id' => $restaurant['place_id'])); if ($row = $today_statement->fetch()) { $restaurant['menu']['valid_from'] = $row['valid_from']; $restaurant['menu']['valid_to'] = $row['valid_to']; $restaurant['menu']['valid_from_hour'] = $row['valid_from_hour']; $restaurant['menu']['valid_to_hour'] = $row['valid_to_hour'];
if ($ajax) { header('Content-Type: application/json'); echo json_encode($response); exit; } /* Add non JavaScript solution else { } */ } //If something goes wrong something is in errors array. We send it contents and exit script //INSERTING INTO DATABASE $sql_attributes = array(':place_id' => $place_id, ':valid_from' => $menu_valid_from->format(DateTime::ISO8601), ':valid_to' => $menu_valid_to->format(DateTime::ISO8601), ':description' => $menu, ':price' => $price); $statment_template = 'INSERT INTO menu VALUES(:place_id, :valid_from, :valid_to, :description, :price)'; try { $dbh = new LunchboxPDO(); } catch (LunchboxException $e) { $response['errors']['db'] = 'Nie udało się połączyć z bazą danych. Spróbuj ponownie za jakiś czas, a jeżeli problem będzie dalej występować, skontaktuj sie z nami i poinformuj nas o tym.'; if ($ajax) { header('Content-Type: application/json'); echo json_encode($response); exit; } /* Add non JavaScript solution else { } */ } try { $insert_statement = $dbh->prepare($statment_template); } catch (PDOException $e) {