I get project to connect lumen with firebird database. I can connect with php file. in connectFDB.php . When I setting .env and config/database.php but not working
ps. I installed this https://packagist.org/packages/harrygulliford/laravel-firebird
ps. lumen5 laravel7 firebird3.0
connectFDB.php it can work and get data for me.
<?php
$database = "/var/lib/firebird/3.0/data/employee.fdb";
$username ="user";
$password = "pass";
$conn = ibase_connect($database, $username, $password);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected to the database<br>";
$sql = "SELECT * FROM EMPLOYEE;";
echo $sql."sql<br>";
$result = ibase_query($conn, $sql) or die(ibase_errmsg());
echo $result."result<br>";
while ($row = ibase_fetch_assoc($result)) {
echo $row["ID"]." ".$row["NAME"]."<br>";
}
ibase_close($conn);
?>
bootstrap/app.php
i regised $app->register(\\Firebird\\FirebirdServiceProvider::class);
<?php
require_once __DIR__.'/../vendor/autoload.php';
(new
Laravel\Lumen\Bootstrap\LoadEnvironmentVariables(dirname(__DIR__)))->bootstrap();
date_default_timezone_set(env('APP_TIMEZONE', 'UTC'));
$app = new Laravel\Lumen\Application(dirname(__DIR__));
$app->withFacades();
$app->withEloquent();
$app->singleton(
Illuminate\Contracts\Debug\ExceptionHandler::class,
App\Exceptions\Handler::class);
$app->singleton(
Illuminate\Contracts\Console\Kernel::class,
App\Console\Kernel::class);
$app->configure('app');
$app->middleware([
'cors' => App\Http\Middleware\CorsMiddleware::class,
]);
$app->register(App\Providers\AuthServiceProvider::class);
$app->register(\Firebird\FirebirdServiceProvider::class);
$app->router->group(['namespace' => 'App\Http\Controllers',], function
($router) {
require __DIR__.'/../routes/web.php';
});
return $app;
config/database.php
<?php
return array(
'default' => 'mysql',
'connections' => array(
//for connect database
'mysql' => array(
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', 3306),
'database' => env('DB_DATABASE', 'orisma_hr'),
'username' => env('DB_USERNAME', 'user'),
'password' => env('DB_PASSWORD', 'pass'),
),
//for connect firebird
'firebird' => array(
'driver' => 'firebird',
'host' => env('DB_FIREBIRD_HOST', ''),
'database' => env('DB_FIREBIRD_DATABASE', '/var/lib/firebird/3.0/data/employee.fdb'),
'username' => env('DB_FIREBIRD_USERNAME', 'user'),
'password' => env('DB_FIREBIRD_PASSWORD', 'pass'),
'charset' => env('DB_FIREBIRD_CHARSET', 'UTF8'),
),
),
);
.env
APP_NAME=Lumen
APP_ENV=local
APP_KEY=907d908ee0936ea8091fc878f9968c1d
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=orisma_hr
DB_USERNAME=user
DB_PASSWORD=pass
DB_FIREBIRD_HOST=
DB_FIREBIRD_DATABASE=/var/lib/firebird/3.0/data/employee.fdb
DB_FIREBIRD_USERNAME=user
DB_FIREBIRD_PASSWORD=pass
DB_FIREBIRD_CHARSET=UTF8
I got work it
1.chown firebird.firebird /tmp/firebird/fb_init 2.chmod 777 /tmp/firebird/fb_init
3.edit .env
DB_FIREBIRD_HOST=localhost
DB_FIREBIRD_USERNAME=sysdba
DB_FIREBIRD_PASSWORD=masterkey(or passwordto set when install firebird)
can see user pass in /etc/firebird/3.0/SYSDBA.password
4.edit config/database.php
'host' => env('DB_FIREBIRD_HOST', 'localhost'),
'username' => env('DB_FIREBIRD_USERNAME', 'sysdba'),
'password' => env('DB_FIREBIRD_PASSWORD', 'masterkey')(or passwordto set when install firebird)
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.