Ich mache ein Darlehen System für Bücher und ich habe eine Profilseite, die die Kredite, die Sie herausgenommen haben, zeigt, unter jeder ist eine Schaltfläche, die Sie zu einem Formular, wo Sie ausfüllen Die Bedingung des Buches, unter dem ein anderer Knopf ist, der die Daten zu einer Rückkehrtabelle in meiner Datenbank sendet, möchte ich den Kredit in der Kredittabelle löschen, weil, wenn nicht dann der Kredit in der Profilseite anzeigt und der Benutzer kann das gleiche Buch beliebig oft zurückgeben. jede Hilfe würde sehr geschätzt werden. danke.löschen Kredit Zeile in der Datenbank nach der Rückgabe Buch
profile.blade.php
<?php
use App\Requests;
use App\Loan;
$request = Requests::where('userid', auth()->user()->userid)->get();
?>
@extends('layouts.app')
@section('content')
<div class="container">
<div class="panel panel-default">
<div class="panel-heading"><h1>Profile: {{ Auth::user()->f_name }}</h1></div>
<div class="panel-body">
<div class="container">
<h3>Requests</h3>
@foreach ($request as $request)
<ul>
<h4>Title: {{$request->r_title}}</h4>
<h4>Author: {{$request->r_author}}</h4>
<h4>Year: {{$request->r_year}}</h4>
<h4>Condition: {{$request->r_condition}}</h4>
<br/>
</ul>
@endforeach
</div>
<div class="container">
<h3>Loans</h3>
@foreach ($loan as $loan)
<ul>
<h4>Title: {{$loan->title}}</h4>
<h4>Start Date: {{$loan->startdate}}</h4>
<h4>Due Date: {{$loan->duedate}}</h4>
<br/>
<form action="{{url('returnform/'.$loan->loanid)}}" method="GET">
<input type="submit" name="returnbtn" value="returnform">
</form>
</ul>
@endforeach
</div>
</div>
</div>
</div>
@endsection
returnform.blade.php
@extends('layouts.app')
@section('content')
<div class="container">
<div class="panel panel-default">
<div class="panel-heading"><h1>Return Book</h1></div>
<div class="panel-body">
<form action="{{url('returns')}}" method="POST">
{{ csrf_field() }}
<div>
<input type="hidden" name="lid" value="{{$loan->loanid}}" id="lid">
<input type="hidden" name="re_bookid" value="{{$loan->bookid}}" id="re_bookid">
<input type="hidden" name="re_title" value="{{$loan->title}}" id="re_title">
<input type="hidden" name="re_ddate" value="{{$loan->duedate}}" id="re_ddate">
</div>
<div>
<label for="title"><h4>Enter the books condition: </h4></label>
<select name ="re_condition" value="{{old('condition')}}">
<option value="mint">Mint</option>
<option value="good">Good</option>
<option value="fair">Fair</option>
<option value="poor">Poor</option>
</select>
</div>
<input type="submit" name="btn" value="returns">
</form>
</div>
</div>
</div>
@endsection
BookController.php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Book;
use App\Returns;
use App\Requests;
use App\Loan;
use Carbon\Carbon;
class BookController extends Controller
{
......
function returnform($loanid)
{
$loan = Loan::find($loanid);
return view('book/returnform',['loan' => $loan]);
}
function returns(Request $request, $loanid)
{
$return = new Returns();
$return->userid = auth()->user()->userid;
$return->f_name = auth()->user()->f_name;
$return->l_name = auth()->user()->l_name;
$return->bookid = $request->re_bookid;
$return->title=$request->re_title;
$return->condition=$request->re_condition;
$return->returndate= Carbon::now();
$return->duedate=$request->re_ddate;
$return->save();
return redirect('profile');
}
Routen
....
Route::get('returnform/{loanid}', '[email protected]');
Route::post('returns', '[email protected]');
Ich würde es nicht löschen, ich würde einen "returned_on" Timestamp und Filter basierend darauf festlegen. – ceejayoz