ao711
@ao711

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

laravel 検索

解決したいこと

ここに解決したい内容を記載してください。

例)
Laravelで商品管理システムをつくっています。
新規登録の作成をしており、検索ボタンを押すとエラー画面が出てきます。
色々なサイトを見ながら進めているのですが、どこを治す出来なのかわかりません。
解決法を教えてください

発生している問題・エラー

Undefined variable $companies

例)

//一覧画面model
    public function getList() {
        $productes = DB::table('productes')->get();
        return $productes;
       
    }
    public function getCompany(){
        $companies=DB::table('companies')->get();
        return $companies;
    }

または、問題・エラーが起きている画像をここにドラッグアンドドロップ

該当するソースコード

@extends('app')
@section('title', '商品一覧画面')

@section('content')
    <div class="container">
        <div class="row">
         <h1>商品一覧画面</h1>
                <div class="form-group">
                <form action="{{ route('search') }}" method="GET">
                    @csrf
                    <input placeholder="検索キーワード" input type="text" name="keyword">
                    <select class="" id="company_id" name="company_id"> 
                        @foreach($companies as $company)
                       <option value="{{ $company -> id }}"{{ $company -> company_name}}></option>
                        @endforeach
                    </select>
                        <input type="submit" value="検索">
                </form>
                <link href="{{ asset('css/app.css') }}" rel="stylesheet">

            <table>
                <thead>
                    <tr>
                        <th>ID</th>
                        <th>商品画像</th>
                        <th>商品名</th>
                        <th>価格</th>
                        <th>在庫数</th>
                        <th>メーカー名</th>
                        <th>
                           <form> 
                           
                           <td><a href="{{route('regist')}}"><button type="button" class="btn btn-primary">新規登録</button></a></td>
                           
                           </form>
                        </th>
                </thead>
                <tbody>
                @foreach ($productes as $productes)
                    <tr>    
                        <td>{{ $productes -> id }}</td>
                        <td>{{ $productes -> img_path}}</td>
                        <td>{{ $productes -> product_name }}</td>
                        <td>{{ $productes -> price }}</td>
                        <td>{{ $productes -> stock}}</td>
                        <td>{{ $productes -> company_name}}</td>
                        <td><a href="{{route('detail',['id'=>$productes->id])}}"><button type="button" class="btn btn-primary">詳細</button></a></td>
                        <td><a href="{{route('delete',['id'=>$productes->id]) }}" method="GET"></a></td>
                        <td>
                            <form action="{{route('delete',['id'=>$productes->id])}}" method="GET">
                                @csrf
                                @method('delete')
                                <input type="submit" class="btn btn-danger delete-btn" value="削除">
                            </form>
                        </td>
                        
                        
                    </tr>
                @endforeach
                </tbody>
            </table>
            </form>
        </div>
    </div>
@endsection

例)

//一覧画面表示controller
  public function showList(){
    $product_model= new Productes();
    $productes = $product_model->showRelation();
    $company_model= new Companies();
    $companies = $company_model->getCompany();
    return view('list',['productes' => $productes,'companies' => $companies]);
  }

自分で試したこと

controllerでうまく$companyが定義されていないのが原因だとはわかっているのですが、記載の仕方に間違っている箇所が見当つかずどのようにすればエラーが解消されるか詳しいかたがおられましたらご教授宜しくお願い致します。

0

1Answer

https://qiita.com/ao711/questions/10435c6bea9ec44b2f0d ←これと同じ質問ですよね。同じ内容の質問でスレッドを乱立するのは閲覧者に迷惑になるのでやめてください。

質問は編集できます。このスレッドは、前のスレッドのコードの表示の乱れを直したということのようですが、それは前のスレッドを編集して直してください。

1Like

Your answer might help someone💌