我是 Laravel 5 的新手,假设我的数据库中有名字和姓氏字段。我有这个验证吗?
public function create()
{
$rules = array(
'firstname' => 'required:unique',
'surname' => 'required:unique',
'phoneno' => 'required',
'mcmillan' => 'required',
'hri' => 'required',
'diabetes' => 'required',
'breastcancer' => 'required',
'gpt' => 'required',
);
$validator = Validator::make(Input::all(), $rules);
// Check if all fields is filled
if ($validator->fails())
{
return Redirect::to('brk')->withErrors($validator);
}
else
{
$flag = Input::get('flag');
/* If version 2 (Opt In) */
if($flag == "1")
{
if(Input::get('opt') != "")
{
$optMethod = Input::get('opt');
}
else
{
$optMethod = 'OptOut';
}
}
else if($flag == "0") /* If version 1 (Opt Out) */
{
if(Input::get('opt') != "")
{
$optMethod = Input::get('opt');
}
else
{
$optMethod = 'OptIn';
}
}
$firstname = Input::get('firstname');
$surname = Input::get('surname');
$phoneno = Input::get('phoneno');
$mcmillan = Input::get('mcmillan');
$hri = Input::get('hri');
$diabetes = Input::get('diabetes');
$breastcancer = Input::get('breastcancer');
$gpt = Input::get('gpt');
$brk = new \App\Http\Models\BrkDailyMail;
$brk->firstname = $firstname;
$brk->surname = $surname;
$brk->phoneno = $phoneno;
$brk->mcmillan = $mcmillan;
$brk->hri = $hri;
$brk->diabetes = $diabetes;
$brk->breastcancer = $breastcancer;
$brk->gpt = $gpt;
$brk->OptMethod = $optMethod;
$brk->hostname = Request::root().'/brk';
$brk->save();
Session::flash('alert-success', 'Form Submitted Successfully.');
/* If version 2 (Opt In) */
if($flag == "1")
{
return Redirect::to('brk2');
}
else if($flag == "0") /* If version 1 (Opt Out) */
{
return Redirect::to('brk');
}
}
}
并且表单仍在提交?可能是什么问题呢?似乎验证不起作用?
表单应该会出现一些错误,对吗?但它仍然插入数据库
最佳答案
$rules = array(
'firstname' => 'required|unique:users',
'surname' => 'required|unique:users',
);
了解更多:
关于php - Laravel 5 唯一验证不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30454318/