Laravel具有错误的表单验证中的大型会话值

时间:2018-08-13 14:08:24

标签: php laravel laravel-5

我似乎无法为会话变量设置“大”值。我尝试设置1000个字符的文本,但该文本没有存储。

Session :: put('key',$ text);

在验证具有大量输入的表单时,这也是一个问题。输入的值不一定必须很大才能使其崩溃。如果表单有很多输入,并且需要将验证错误传播回视图“-> withInput()”,那么所有输入也会丢失。

我尝试使用cookie和文件会话处理程序,并将会话最大大小设置为4KB,也设置为8KB。

Laravel 5.2。

1 个答案:

答案 0 :(得分:0)

这是一个已知问题。创建一个php artisan make:migration change_sessions_table并添加以下内容:

public function up()
{
    Schema::table('sessions', function (Blueprint $table)
    {
        $table->longText('payload')->change();
    });
}

甚至在生产服务器上也运行php artisan migrate

关于以这种方式使用会话的警告。如果是用于插入查询结果,则一段时间后,随着数据库的增长,可能还不够。您将不得不规避其他方式。例如,您可以使用商店缓存。