【问题标题】:Laravel submit button doesn't work correctlyLaravel 提交按钮无法正常工作
【发布时间】:2018-01-29 20:17:15
【问题描述】:

我有一个带有提交按钮的表单,我正在使用 get 方法发送值以从我的 PostgreSQL 数据库中获取数据,所以我在 mi route 中有这个

Route::get('informacion_entidad/{pass}','InformacionEntidadController@show');

在我的控制器中我有这个:

$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>

问题是,当我按下按钮时,它给了我这个网址

informacion_entidad?pass=das

但我需要类似的东西

informacion_entidad/password

我该怎么做?

【问题讨论】:

  • 您没有设置表单的操作属性。此外,您永远不应该在 GET 请求上发送密码,因为任何人都可以轻松读取该 URL。使用POST 请求,并在请求负载中发送您的密码。
  • 我已经更改发布我的路线是这样的: Route::post('user/{pass}', ['as' => 'pass', 'uses' => 'InformacionEntidadController @显示']);但我不想显示任何网址,只是在将密码发送到控制器后重定向到另一个网址,我的控制器现在是这样的: $sql="select valida('".$pass."')"; $results = DB::select($sql); foreach ($results as $k => $v) $results = $v->valida;返回视图(“索引”); dd($results);

标签: php laravel-5 crud laravel-routing laravel-eloquent


【解决方案1】:

以下链接解释了您对 laravel 5.2 的问题(基本上没有更改为当前版本)form routes in Laravel 5.2

另外:您可能不想通过 get 发送表单(尤其是密码等)

为您寻找另一个链接以获取有关 laravel 表单的更多信息:laravel-recipes

我个人喜欢laracasts 网站,它有很多非常有帮助的视频,解释了如何使用所有东西。

【讨论】:

    【解决方案2】:

    你应该使用哈希生成和检查。

    要在数据库中存储密码,请对密码进行哈希处理,然后保存。

    $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 
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-20
      • 2015-01-31
      • 1970-01-01
      • 2012-12-23
      相关资源
      最近更新 更多