Laravel提交按钮无法正常工作
问题描述:
我有一个提交按钮形式,我使用GET方法发送的值从我的PostgreSQL数据库获取数据,所以我有这个在MI路线Laravel提交按钮无法正常工作
Route::get('informacion_entidad/{pass}','[email protected]');
在我的控制,我有这样的:
$sql="select valida('".$pass."')";
$results = DB::select($sql);
foreach ($results as $k => $v)
$results = $v->valida;
dd($results);
和我的形式是这样的:
<form method="get">
<div class="form-group">
<label for="pass" class="control-label">password</label>
<input id="pass" name="pass" placeholder="Ingrese el password" type="text" class="form-control">
</div>
<button type="submit" class="btn btn-labeled btn-success">
<span class="btn-label">
<i class="fa fa-download"></i>
</span>
submit
</button>
</form>
的问题是,当我推我的按钮,它gaves我这个网址
informacion_entidad?pass=das
,但我需要像
informacion_entidad/password
我该怎么办呢?
答
以下链接解释你的laravel 5.2问题(这基本上没有改变当前的版本)form routes in Laravel 5.2
也:你可能不希望通过get(特别是没有密码之类发送表单)
找了另一个链接,你得到laravel表单的详细信息:laravel-recipes
我个人喜欢laracasts网站里面有很多的解释如何使用都非常帮助视频。
答
你应该使用哈希make和check。
要将密码存储在数据库中,请对密码进行散列并保存。
$password = Input::get('password_from_user');
$hashed = Hash::make($password); // save $hashed value
要验证密码,从数据库
// $user is database object
// $inputs is Input from user
if(\Illuminate\Support\Facades\Hash::check($inputs['password'], $user['password']) == false) {
// Password is not matching
} else {
// Password is matching
}
你不设置表单的action属性获取存储帐户的密码。您也不应该在'GET'请求上发送密码,因为任何人都可以轻松读取URL。使用'POST'请求,并在请求有效载荷中发送您的密码。 –
我已经改变张贴我的路线是这样的: Route :: post('user/{pass}',['as'=>'pass','uses'=>'InformacionEntidadController @ show']) ;我的控制器现在是这样的: $ sql =“select valida('”。$ pass。“' )“; $ results = DB :: select($ sql); (结果为$ k => $ v) $ results = $ v-> valida; return view(“index”); dd($ results); –