前提・実現したいこと
こちらの書籍を参考にSQLiteを試しています。
PHPフレームワーク Laravel入門
http://www.shuwasystem.co.jp/products/7980html/5258.html
基本的なファイルなどは準備したつもりですが、接続時にエラーが発生しており解決できていません。
いろいろ変えたもののハマっているため、怪しい点をアドバイス頂ければ大変助かります。
発生している問題・エラーメッセージ
Database (database.sqlite) does not exist. (SQL: select * from people)
#ソース
database.php
php
1<?php 2 3return [ 4 'default' => env('DB_CONNECTION', 'sqlite'), 5 'connections' => [ 6 7 'sqlite' => [ 8 'driver' => 'sqlite', 9 'database' => env('DB_DATABASE', database_path('database.sqlite')), 10 'prefix' => '', 11 ], 12 13~以下省略 14
.env
php
1APP_NAME=Laravel 2APP_ENV=local 3APP_KEY=base64:pOeo3jXaD/RQ96FdaEXy5AuJNfLPyxgIZOc0gUMsERM= 4APP_DEBUG=true 5APP_URL=http://localhost 6 7LOG_CHANNEL=stack 8 9DB_CONNECTION=sqlite 10DB_HOST=127.0.0.1 11DB_PORT=3306 12DB_DATABASE=database/database.sqlite 13DB_USERNAME= 14DB_PASSWORD= 15 16~以下省略 17
HelloController.php
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; class HelloController extends Controller { public function index(Request $request) { $items = DB::select('select * from people'); return view('hello.index', ['items' => $items]); } public function post(Request $request) { $validate_rule = [ 'name' => 'required', 'mail' => 'email', 'age' => 'numeric|between:0,150', ]; } }
index.blade.php
@extends('layouts.helloapp') @section('title', 'Index') @section('menubar') @parent SQLiteの読み込み @endsection @section('content') <table> <tr><th>Name</th><th>Mail</th><th>Age</th></tr> @foreach ($items as $item) <tr> <td>{{$item->name}}</td> <td>{{$item->mail}}</td> <td>{{$item->age}}</td> </tr> @endforeach </table> @endsection @section('footer') copyright 2017 tuyano. @endsection
web.php
php
1<?php 2 3use App\Http\Middleware\HelloMiddleware; 4 5 6Route::get('/', function () { 7 return view('welcome'); 8}); 9 10Route::get('hello', 'HelloController@index');
###SQLiteファイルの場所
C:\xampp\htdocs\laravel\databaseの直下
試したこと
- 写経の後にサンプルソースをコピペ
- sqliteファイルを削除して再作成
回答2件
あなたの回答
tips
プレビュー