Mam problem, w moim kodzie poniżej, chcę zaktualizować moją bazę danych za pomocą nowych wpisów, świetnie działało dobrze na moje inne stoły Beauce Mogę użyć $data = Table::find($id); Ale tutaj nie mogę dlatego, że mój klucz podstawowy jest dwoma kluczami zagranicznymi .. (Klienci i Bookid dokonują podstawowego klucza mojego stołu).

Próbowałem poniższego kodu, ale nie działa, podobnie jak $ Dane nie zawierają wartości, które miały zdobyć.

<table>
    <form action="/editloan" method="POST"><br><br>
        @csrf
        <input type="hidden" name="number" value="{{ $data['number'] }}">
        
            <tr>
                <!-- Here nothing shows up :( -->
                <td><input type="number" name="clientid" value="{{ $data['clientid'] }}"><br><br></td>
            </tr>

            <tr>
                <td><input type="number" name="livreid" value="{{ $data['livreid'] }}"><br><br></td>
            </tr>


            <tr>
                <td><button class="btn btn-primary btn-block" type="submit">Modifier</button></td>
            </tr>
        
        
    </form>
</table>

A kiedy chcę przekazać dane do mojej ostatecznej funkcji, aby zmienić dane w bazie danych, nie działa ...:

 function updateLoan(Request $req)
 {
        // du coup ne fonctionne pas non plus 
        $data=DB::table('emprunts')->where('number',$req);
        $data->clientid=$req->clientid;
        $data->livreid=$req->livreid;
        $data->save();

        $listloans = Emprunt::all();
        return view('crud.showloans',['emprunts'=>$listloans]);
  }

Jak mogę zrobić?

Przepraszam, wiem, że to prawdopodobnie głupi pytanie, ale to moja pierwsza praca nad Lavelem i tylko studentem :)

    function showFormEdit($id)
    {
            $data = DB::table('emprunts')->where('number','=',$id)->get();
            return view('crud.formloanedit',['data'=>$data]);
    }
1
YesItsMe 14 kwiecień 2021, 21:15

1 odpowiedź

Najlepsza odpowiedź

Najpierw sprawdź tutaj, widzę, że zapomniałeś - & gt; First () <) wyniki.

// du coup ne fonctionne pas non plus 
$data=DB::table('emprunts')->where('number',$req->number)->first();
// devrait mieux fonctionner

Druga część, aby uzyskać dane:

function showFormEdit($id)
{
        $data = DB::table('emprunts')->where('number','=',$id)->first();
        return view('crud.formloanedit',['data'=>$data]);
}

A ty masz taki:

$data->columnName;
1
David 14 kwiecień 2021, 18:28