Ich habe eine Ansicht mit einem Eingabedatum Feld und eine Tabelle darunter. Die Tabelle wird basierend auf dem eingegebenen Datum ausgefüllt. Wenn das Datum eingegeben wird, verwende ich eine POST-Methode auf dem Formular, die die DB-Anfrage behandelt und die gleiche Ansicht mit den Daten zurückgibt. Ich möchte auch das ursprüngliche Datum zurückgeben, das eingegeben wurde. Ich versuchte session()->keep
und flashOnly
Methoden. Keiner gibt das Eingabedatum an die Ansicht zurück. Mein Controller:Laravel 5 Sitzung() -> halten Methode nicht funktioniert
public function groupTestAthletes(Request $request)
{
$inputDate = null;
$tests = null;
if ($request['tgroupdate']){
$inputDate = Carbon::createFromFormat('d/m/Y', $request['tgroupdate']);
$tests = Test::where('test_date', '=', $inputDate->format('Y-m-d'))
->orderBy('athlete_id', 'desc')
->get();
}
$request->session()->keep(['tgroupdate']);
//$request->flashOnly(['tgroupdate']);
return view('npr.test_athletes', ['tests' => $tests]);
Meine Ansicht:
<form class="form-inline" role="form" method="POST" action="{{ route('admin.search_tgroup') }}">
{{ csrf_field() }}
<div class="form-group">
<label for="tgroupdate" class="control-label">Test Date</label>
<div class="input-group date" id="testgroupdatepicker">
<input name="tgroupdate" type="text" style="background-color:#ffffff" readonly=""
value="{{ Session::get('tgroupdate') }}" class="form-control">
<div class="input-group-addon">
<span class="glyphicon glyphicon-th"></span>
</div>
</div>
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary">Search Athletes
</button>
<input type="hidden" name="_token" value="{{ Session::token()}}">
</div>
</form>
Vielen Dank. Ihr '$ selected_date' muss nur in geschweiften Klammern stehen. Ich kann jetzt das alte Datum sehen, aber wenn ich erneut auf Athleten suchen klicke (ohne die Eingabe zu ändern), erhalte ich einen Fehler: "Unerwartete Daten gefunden.Trailing Daten" bezieht sich auf diese Zeile '$ inputDate = Carbon :: createFromFormat ('d/m/Y ', $ request [' tgroupdate ']); ' Muss ich das lieber in eine andere Frage stellen? – louisav
Keine geschweiften Klammern um '$ selected_date' erforderlich, '@' öffnet und schließt das php-Tag. Und über den Fehler, print_r ($ request ['tgroupdate']); sterben(); 'Überprüfen Sie, ob Sie das richtige Datumsformat erhalten. –
Wenn ich nicht die geschweiften Klammern verwende, druckt es tatsächlich das Wort '$ selected_date' im Datumsfeld. Das 'die()' erzeugte das korrekte Format: 12/10/2016 – louisav