如何将phpmyAdmin数据库中的数据与表单数据laravel进行比较



我正在将数据插入phpmyAdmin数据库(使用laravel(。如何限制用户向特定表中添加重复数据?例如:用户名。每个用户都应该有一个唯一的用户名。如果用户输入了一个已经存在的用户名,他们应该会得到一个错误(最好是会话(,说用户名已经存在。感谢提前提供的帮助

$detailscode = DB::Table('products')->select('description_code')->where('id',1)->get();  

foreach ($detailscode as $items){
$codes = $items;
}
if($request->detailscode == $codes){
Session::put('Error','Enter a different code');
return redirect::to('/add-product');
}

在迁移中,您可以告诉SQL防止重复,如下所示:

$table->string('username')->unique();

现在,您不能在此表中插入相同的username,如果您尝试这样做,您将从SQL中收到错误消息。

为了防止错误显示在您的Laravel应用程序上,您需要使用validation:

$validator = Validator::make($request->all(), [
'username' => 'unique:users,username', 
]);

请参阅此处的官方文档

最新更新