目标是如果使用特定的卡#,则提交订单并保存到数据库(此部分正在运行)。但是,如果你输入一个不同的具体数字,它应该打印“你的卡被拒绝”我无法让这部分工作我收到错误类'App \ Http \ Controllers \ Session'找不到
控制器使用
<?php
namespace App\Http\Controllers;
use App\Item;
use App\Purchase;
use App\Http\Controllers\Session;
use Illuminate\Http\Request;
控制器功能
public function store(Purchase $purchase, Item $item)
{
$this->validate(request(), [
'fName' => 'required|min:3',
'lName' => 'required|min:3',
'address' => 'required',
'city' => 'required',
'state' => 'required',
'zip' => 'required',
'card' => ['required', 'regex:(5105 1051 0510 5100|4111 1111 1111 1111)']
]);
$purchase->product = request('product');
$purchase->fName = request('fName');
$purchase->lName = request('lName');
$purchase->address = request('address');
$purchase->city = request('city');
$purchase->state = request('state');
$purchase->zip = request('zip');
$purchase->card = request('card');
if (request('card') == '5105 1051 0510 5100') {
$purchase->save(); // Save to the database
return redirect('/thanks/'.$item->id);
} elseif (request('card') == '4111 1111 1111 1111') {
Session::flash('error', "Special message goes here");
return Redirect::back();
}
return back();
}
现在编辑它正在工作我没有收到要打印的实际消息。
刀片
@php
if ( Session::has('error') ) {
echo '<div class="alert alert-info">{{ Session::get("error") }}</div>';
}
@endphp
答案 0 :(得分:1)
你忘记了反斜杠
\Session::flash('error', "Special message goes here");
^^
或替换
use App\Http\Controllers\Session;
使用
use Session;
如果你看一下config/app.php
,你会看到一些别名。
并在此修复您的代码:
@php
if ( Session::has('error') ) {
echo '<div class="alert alert-info">'. Session::get("error") . '</div>';
}
@endphp