// Is valid if ($contact_form->isValid()) { $message = \Swift_Message::newInstance(); $message->setSubject($form_data['subject'] . ' (' . $form_data['email'] . ')'); $message->setFrom(array($form_data['email'])); $message->setTo(array('*****@*****.**')); $message->setBody($form_data['message']); $app['mailer']->send($message); return $app->redirect($app['url_generator']->generate('about')); } } $data = array('contact_form' => $contact_form->createView()); return $app['twig']->render('pages/about.twig', $data); })->bind('about'); $app->get('/pokemons', function () use($app, $pokemons_model) { $pokemons = $pokemons_model->getAll(); $data = array('pokemons' => $pokemons); return $app['twig']->render('pages/pokemons.twig', $data); })->bind('pokemons'); $app->get('/pokemon/{id}', function ($id) use($app, $pokemons_model, $types_model) { $pokemon = $pokemons_model->getOneById($id); $pokemon->types = $types_model->getAllForPokemonId($pokemon->id); $data = array('pokemon' => $pokemon); return $app['twig']->render('pages/pokemon.twig', $data); })->bind('pokemon'); $app->get('/test', function () use($app) { $url = $app['url_generator']->generate('pokemon', array('id' => 88)); return $app->redirect($url); }); // Error $app->error(function (\Exception $e, $code) use($app) {
require_once __DIR__ . '/../models/pokemons.class.php'; $app = new Silex\Application(); // Config $app['debug'] = true; // Services $app->register(new Silex\Provider\UrlGeneratorServiceProvider()); $app->register(new Silex\Provider\TwigServiceProvider(), array('twig.path' => __DIR__ . '/../views')); $app->register(new Silex\Provider\DoctrineServiceProvider(), array('db.options' => array('driver' => 'pdo_mysql', 'host' => 'localhost', 'dbname' => 'hetic_p2019_silex_pokedex_g1', 'user' => 'root', 'password' => 'root', 'charset' => 'utf8'))); $app['db']->setFetchMode(PDO::FETCH_OBJ); // Models $pokemonsModel = new PokemonsModel($app['db']); // Routes $app->get('/', function () use($app) { $data = array(); return $app['twig']->render('pages/home.twig', $data); })->bind('home'); $app->get('/about', function () use($app) { $data = array(); return $app['twig']->render('pages/about.twig', $data); })->bind('about'); $app->get('/pokemons', function () use($app, $pokemonsModel) { $pokemons = $pokemonsModel->getAll(); $data = array('pokemons' => $pokemons); return $app['twig']->render('pages/pokemons.twig', $data); })->bind('pokemons'); $app->get('/pokemon/{id}', function ($id) use($app) { $data = array(); return $app['twig']->render('pages/pokemon.twig', $data); })->assert('id', '\\d+')->bind('pokemon'); // Run $app->run();