2016-04-20 2 views
2

Я работаю над простым silex api. Я просто хотел бы использовать mysql как db, но по мере того как я продолжал ставить простые инструкции вставки, используя silex, он, похоже, не продолжается.Silex не может быть добавлен в базу данных

Вот мой index.php:

<?php 
require_once __DIR__.'/../vendor/autoload.php'; 
$app = new Silex\Application(); 
$app['debug'] = true; 

//database connection settings 
$app->register(new Silex\Provider\DoctrineServiceProvider(), array(
    'db.options' => array(
     'dbname' => 'silexdb', 
     'user' => 'root', 
     'host'  => 'localhost', 
     'driver' => 'pdo_mysql', 
     'port'  => 3306 
    ), 
)); 

$app['db']->insert('users', array(
     'firstName' => 'Gabriel', 
     'lastName' => 'Gagno' 
    ) 
); 

//routes 
$app->get('/hello', 'App\\Controllers\\HelloController::hello'); 

$app->run(); 

?> 

И мой composer.json:

{ 
    "require": { 
     "silex/silex": "~1.3", 
     "symfony/browser-kit": "~2.3", 
     "symfony/console": "~2.3", 
     "symfony/config": "~2.3", 
     "symfony/css-selector": "~2.3", 
     "symfony/dom-crawler": "~2.3", 
     "symfony/filesystem": "~2.3", 
     "symfony/finder": "~2.3", 
     "symfony/form": "~2.3", 
     "symfony/locale": "~2.3", 
     "symfony/process": "~2.3", 
     "symfony/security": "~2.3", 
     "symfony/serializer": "~2.3", 
     "symfony/translation": "~2.3", 
     "symfony/validator": "~2.3", 
     "symfony/monolog-bridge": "~2.3", 
     "symfony/twig-bridge": "~2.3", 
     "doctrine/dbal": "~2.2", 
     "swiftmailer/swiftmailer": "5.*" 
    }, 
    "autoload" : { 
     "psr-4" : { 
     "App\\Controllers\\" : "app/controllers" 
     } 
    } 
} 

что я делаю не так? спасибо!

ответ

4

Положите insert код в функции маршрутизации:

$app->get('/insert',function() use $app { 

    $app['db']->insert('users', array(
     'firstName' => 'Gabriel', 
     'lastName' => 'Gagno' 
    ) 
    ); 

}); 

Теперь доступ /insert выполнить для вставки кода.

+0

Спасибо! Я решил это, прежде чем увидеть этот комментарий, но я сделал то же, что и вы. Благодаря! – dagitab

Смежные вопросы