You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel执行store方法后自动登出且未存储数据问题求助

Laravel提交艺术运动新增表单自动登出问题修复方案

问题原因及修复步骤

  • 1. 修复文本域重复name属性错误
    你前端表单的textarea标签定义了两个name属性,后定义的name="content"会覆盖之前的name="deskripsi_art",导致后端接收不到deskripsi_art字段触发必填验证失败。
    修改前代码:
<textarea  name="deskripsi_art" class="form-control @error('deskripsi_art') is-invalid @enderror" name="content" rows="5" id="deskripsi" placeholder="Masukkan Deskripsi Postingan">{{ old('content') }}</textarea>

修改后代码:

<textarea name="deskripsi_art" class="form-control @error('deskripsi_art') is-invalid @enderror" rows="5" id="deskripsi" placeholder="Masukkan Deskripsi Postingan">{{ old('deskripsi_art') }}</textarea>
  • 2. 修复控制器重定向方法调用错误
    redirect()->route()方法接收的参数是路由别名,不是路由URI,你当前传的/backend/blog是路由路径,不属于已定义的路由别名,会触发路由不存在异常。
    修改前代码:
return redirect()->route('/backend/blog')->with(['message' => 'Data Berhasil Disimpan!']);

两种正确写法二选一即可:

// 写法1:用路由路径跳转
return redirect()->to('/backend/blog')->with(['message' => 'Data Berhasil Disimpan!']);
// 写法2:用路由别名跳转
return redirect()->route('blogindex')->with(['message' => 'Data Berhasil Disimpan!']);

错误分支的重定向代码也按相同规则修改。

  • 3. 确保模型允许批量赋值
    检查ArtMovement模型的$fillable属性,确认你在create方法中用到的所有字段都已加入白名单,否则会触发批量赋值异常,无法写入数据库:
// App\Models\ArtMovement.php
protected $fillable = [
    'nama_art',
    'foto_art',
    'tahun_awal',
    'tahun_akhir',
    'deskripsi_art',
    'tautan_art',
    'nama_tautan_art'
];
  • 4. 修复CKEditor内容同步问题
    CKEditor默认不会自动同步编辑内容到原textarea标签,需要在表单提交时手动触发同步,在页面底部的JS部分添加以下代码:
$('form').submit(function() {
    for (var instance in CKEDITOR.instances) {
        CKEDITOR.instances[instance].updateElement();
    }
});
  • 5. 调整上传配置避免请求截断
    如果上传的图片过大,超过php.ini配置的post_max_size或upload_max_filesize限制,会导致POST请求被截断,Laravel无法接收到CSRF令牌和会话cookie,就会判定用户未登录,触发登出逻辑。可以修改php.ini配置调高限制:
post_max_size = 20M
upload_max_filesize = 20M
  • 6. 优化登出路由避免误触发
    你当前定义的登出路由为GET请求,容易被爬虫或误访问触发,建议改为POST请求并加上中间件保护:
Route::post('/logout', function()
{
    auth()->logout();
    session()->flush();
    return Redirect::to('/');
})->middleware('auth')->name('logout');

内容的提问来源于stack exchange,提问作者harlow

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 05:06:03