質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

Q&A

解決済

1回答

1005閲覧

Cannot end a section without first starting one. (View: が発生してしまっています

toll_tree

総合スコア199

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

0グッド

0クリップ

投稿2019/05/20 11:06

前提・実現したいこと

URLアドレス部分に、「http://localhost/laravelapp/public/hello/edit?id=1」と打ち込み、アクセスを試みると、以下のエラーが発生してしまっている状況です。
イメージ説明

該当のソースコード

以下は、コントローラ部分であるHelloController.phpです

php

1<?php 2 3namespace App\Http\Controllers; 4 5use Illuminate\Http\Request; 6use Illuminate\Http\Response; 7use App\Http\Requests\HelloRequest; 8use Validator; 9use Illuminate\Support\Facades\DB; 10 11 12class HelloController extends Controller{ 13 14 public function index(Request $request) 15 { 16 17 18 $items = DB::select('select * from people'); 19 return view('hello.index',['items' => $items]); 20 21 } 22 23 public function post(Request $request) 24 25 { 26 $items = DB::select('select * from people'); 27 dd('ng'); 28 return view('hello.index',['items' => $items]); 29 30 31 } 32 public function add(Request $request) 33 { 34 return view('hello.add'); 35 } 36 37 public function create(Request $request) 38 { 39 40 $param = [ 41 'name' => $request->name, 42 'mail' => $request->mail, 43 'age' => $request->age, 44 ]; 45 46 DB::insert('insert into people (name, mail, age) values 47 (:name, :mail,:age)',$param); 48 49 return redirect('/hello'); 50 } 51 52 public function edit(Request $request) 53 { 54 $param = ['id' => $request->id]; 55 $item = DB::select('select * from people where id = :id',$param); 56 return view ('hello.edit',['form' => $item[0]]); 57 } 58 59 public function update(Request $request) 60 61 { 62 $param = [ 63 'id' => $request->id, 64 'name' => $request->name, 65 'mail' => $request->mail, 66 'age' => $request->age, 67 ]; 68 69 DB::update('update people set name = :name,mail = :mail, 70 age = :age where id = :id',$param); 71 return redirect('/hello'); 72 } 73 74} 75 76

以下は、ルーティング部分のweb.phpです

php

1<?php 2 3/* 4|-------------------------------------------------------------------------- 5| Web Routes 6|-------------------------------------------------------------------------- 7| 8| Here is where you can register web routes for your application. These 9| routes are loaded by the RouteServiceProvider within a group which 10| contains the "web" middleware group. Now create something great! 11| 12*/ 13 14 15// Route::post('hello','HelloContoroller@post'); 16 17//use App\Http\Middleware\HelloMiddleware; 18 19Route::get('hello/add','HelloController@add'); 20Route::post('hello/add','HelloController@create'); 21 22Route::get('hello','HelloController@index'); 23 24Route::get('hello/edit','HelloController@edit'); 25Route::post('hello/edit','HelloController@update'); 26 27

以下は、ビュー部分のedit.blade.phpです

php

1@extends('Layouts.helloapp') 2 3@section('title','Edit') 4 5@section('menubar') 6 @parent 7 更新ページ 8 9@endsection 10 11@section('content') 12 13<table> 14 15 <form action="/hello/edit" method="post"> 16 {{ csrf_field() }} 17 <input type="hidden" name="id" value="{{$form->id}}"> 18 <tr><th>name: </th><td><input type="text" name="name" 19 value="{{$form->name}}"></td></tr> 20 <tr><th>mail:</th><td><input type="text" name="mail" 21 value="{{$form->mail}}"></td></tr> 22 <tr><th>age:</th><td><input type="text" name="age" 23 value="{{$form->age}}"></td></tr> 24 <tr><th></th><td><input type="submit" 25 value="send"></td></tr> 26 27 28 </form> 29</table> 30@endsection('footer') 31copyright 2017 tuyano. 32@endsection

試したこと

エラー内容を検索

補足情報(FW/ツールのバージョンなど)

laraveのバージョンは5.8です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2019/05/20 14:44

基幹であるDocumentRoot問題が解決してないのにやろうとするからです。 未解決問題増やして何がしたいのでしょうか・・
toll_tree

2019/05/20 14:46

未解決問題を増やそうとする意図はありませんでした。 >基幹であるDocumentRoot問題が解決してないのにやろうとするからです。 そこを最初に解決するべきでしたね
m.ts10806

2019/05/20 14:49

>そこを最初に解決するべきでしたね だいぶ前に言ってますがどういうつもりだったんでしょうか。
guest

回答1

0

ベストアンサー

Bladeのsectionディレクティブは、@sectionと@encsectionで囲むのが正しいです。


Laravel 5.8 Bladeテンプレート

@section 〜記述 @endosection

以下の箇所で、@endsection('footer')というのがエラーの原因かと思いますので、@sectionに直して確認してみてください。

@endsection('footer') copyright 2017 tuyano. @endsection

投稿2019/05/20 15:56

aro10

総合スコア4106

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

toll_tree

2019/05/21 01:37

ご回答ありがとうございます。 基本的な文法ミスでしたね... 実は、ドキュメントルートの設定でつまってしまっていて、アクセスができていないので、そちらをなんとかして、edit.blade.phpにアクセスを試みたいと思います。。。
aro10

2019/05/24 02:52

その後の状況はどうでしょうか? 問題解決した場合は、他の未解決の回答とともに解決済みにしてください。 別の問題が発生した場合は、新規で質問をしてください。
toll_tree

2019/05/24 04:10

お久しぶりです。 実は、回答を頂いた際は、解決していなかったと思ったのですが、今試してみましたら、エラーが消えておりました。 取り敢えず,aro10さんの回答をベストアンサーとさせて頂きます
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問