Php 如何使用Laravel表单和GET方法在URL中以加密格式传递GET参数?

Php 如何使用Laravel表单和GET方法在URL中以加密格式传递GET参数?,php,laravel,encryption,laravel-5,laravel-5.2,Php,Laravel,Encryption,Laravel 5,Laravel 5.2,我想在表单提交时加密参数。我使用的是laravel 5.2版本,当表单提交时,我使用get方法提交表单。但在提交表单时,该时间会在URL中显示所有参数。所有这些参数我都要加密。比如说 http://localhost:8000/get/experiences?category_id=18 到 我该怎么做 您需要定义路线: Route::post('/get/experiences/{category_id}', 'Controller@method'); 之后,您可以制作以下表格: <

我想在表单提交时加密参数。我使用的是laravel 5.2版本,当表单提交时,我使用
get方法
提交表单。但在提交表单时,该时间会在URL中显示所有参数。所有这些参数我都要加密。比如说

http://localhost:8000/get/experiences?category_id=18


我该怎么做

您需要定义路线:

Route::post('/get/experiences/{category_id}', 'Controller@method');
之后,您可以制作以下表格:

<form action="{{ url('/get/experiences/'.encrypt($category_id)) }}" method="post">
<!-- all your form data -->
<input type="submit" value="Post">
</form>

这将向路由发送一个
POST
请求,
/get/experiences/{category\u id}
,它将
加密
您的
$category\u id
使用
加密
方法

希望这能奏效

使用
encrypt()
global helper加密数据,然后使用
decrypt()
解密数据


您可以使用post方法。添加
Route::post('/get/experiences/{category_id}','Controller@method');到您的路线,不要忘记在表单标签中添加
{!!csrf_field()!!}
代码


参数不会显示在URL中,因此您不必进行加密。当然如果您不想特别使用get方法进行加密。

为什么不使用POST方法?我不能使用POST方法,因为在url上按enter键显示错误Laravel 5 MethodNotAllowedHttpException in RouteCollection.php第201行:请看一看,我有十多个参数,如何添加?我建议发布所有这些参数而不是url@达纳什里
<form action="{{ url('/get/experiences/'.encrypt($category_id)) }}" method="post">
<!-- all your form data -->
<input type="submit" value="Post">
</form>