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

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

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

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

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

PHP

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

Q&A

解決済

1回答

1208閲覧

トップページの「編集する」ボタンで、(その文言のIDに紐付いた)編集画面を開くようにしたい

kerokeroryu2631

総合スコア14

Laravel

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

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

PHP

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

0グッド

0クリップ

投稿2020/10/06 08:57

トップページの、ある文言の隣に、「編集する」ボタンがあり、それを押すと、その文言のIDに紐付いた情報を編集画面に表示、
編集できるようにしたい。
しかし、ルーティングがうまく行っていないのか、下記のようなエラーメッセージが出て、先に進めません。
エラーの解決方法を教えて下さい。
#エラーメッセージ
404 Not Found
場所:
C:\xampp\htdocs\proverb\proverb\vendor\laravel\framework\src\Illuminate\Routing\AbstractRouteCollection.php#43
#ルーティング

<?php use Illuminate\Support\Facades\Route; /* |-------------------------------------------------------------------------- | Web Routes |-------------------------------------------------------------------------- | | Here is where you can register web routes for your application. These | routes are loaded by the RouteServiceProvider within a group which | contains the "web" middleware group. Now create something great! | */ // Route::get('/', function () { // return view('welcome'); // }); Route::get('/', 'ProverbFormController@index'); // ↓編集画面に推移ルーティング Route::get('/edit/{id}', 'ProverbFormController@edit'); Route::resource('Proverb', 'ProverbFormController');

#コントローラー

public function edit($id) { // $values = DB::table('proverbs')->where('id', '=', $id)->get(); dd($values); return view('Proverb.edit', compact('values')); }

#ビュー

<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous"> <title>Document</title> </head> <body> <nav class="navbar navbar-expand navbar-dark bg-secondary"> <a class="navbar-brand" href="#">格言編集サイト</a> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="ナビゲーションの切替"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbar"> <ul class="navbar-nav mr-auto"> <li class="nav-item active"> <a class="nav-link" href="#">ホーム <span class="sr-only">(現位置)</span></a> </li> <li class="nav-item"> <a class="nav-link" href="#">格言</a> </li> <li class="nav-item"> <a class="nav-link" href="#">管理者について</a> </li> <li class="nav-item"> <a class="nav-link" href="#">お問い合わせ</a> </li> </ul> <form class="form-inline my-2 my-md-0"> <input class="form-control" type="search" placeholder="検索..." aria-label="検索..."> </form> </div> </nav> <div class="jumbotron"> <!-- <h1 class="display-4">格言編集アプリ</h1> --> <p class="lead">格言を自由に編集できるアプリです。<br> 偉人になったつもりで偉人の格言を自由に編集しちゃってください。</p> <hr class="my-4"> <!-- <p>格言を自由に編集できるアプリです。偉人になったつもりで偉人の格言を自由に編集しちゃってください。</p> --> <h2>今日の格言</h2> <h1>{{ $proverbs->proverb_contact }}</h1> <!-- ↓このボタンを押したら編集画面に遷移するようにしたいです。 --> <td><a href="/proverb/public/proverb/edit/{{$proverbs->id}}" class="btn btn-primary btn-sm">編集する</a></td> <hr class="my-4"> <h3>その他の格言</h3> <br><br> <table class="table table-hover"> <tbody> @foreach($proverbs_contact as $proverbs_contact) <tr> <td>{{ $proverbs_contact->proverb_contact }}</td> <td> <!-- ここにゲットの内容を記載 --> <button type="submit" class="btn btn-info">編集する</button> </form> </td> </form> </tr> @endforeach </tbody> </table> </div> </body> </html>

#参考にしたサイト
参考にしたサイト

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

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

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

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

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

cacao86

2020/10/06 09:19

>@foreach($proverbs_contact as $proverbs_contact) ここはうまく動いてますか?
guest

回答1

0

ベストアンサー

ファイルパスは合ってますか??

簡易前後で
vardump($proverbs->id);
をするとどうなりますか?

投稿2020/10/06 09:08

ma_3636

総合スコア19

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

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

kerokeroryu2631

2020/10/06 09:14

ビューの編集ボタンの下に、<?php var_dump($proverbs->id); ?>を追加すると、下記が表示されました。 C:\xampp\htdocs\proverb\proverb\storage\framework\views\c3b00787164385d648e20e121aedb71681524c92.php:49:int 3
kerokeroryu2631

2020/10/06 09:15

これは編集ボタンのファイルパスが間違っているということなのでしょうか?
kerokeroryu2631

2020/10/06 09:19

すみません、ファイルパスを下記に変更したら、パスが通りました。 <td><a href="/edit/{{$proverbs->id}}" class="btn btn-primary btn-sm">編集する</a></td>
ma_3636

2020/10/06 10:10

解決してなによりです。 頑張ってください^^
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問