提交表单有效,但不显示任何消息



我正在与Laravel 8合作创建一个网站。我把数据库链接到一个表单上,它就工作了。当我提交表格时,唯一的问题是它显示了一个黑屏,而且它正在下载。我可以将数据保存在数据库中,但没有显示任何消息,而且这个块根本不正常。

我想这是一个前端问题。有人知道吗?

刀片中的表单代码:

<section id="share-story" class="contact">
<div class="container" data-aos="fade-up">
<div class="section-title">
<h2>Stories</h2>
<p>Share Your Story with Us</p>
</div>
<div class="col-lg-8 mt-5 mt-lg-0">
<form action="{{route('share-story')}}" method="post" role="form" class="php-email-form">
@csrf

<div class="form-row">
<div class="col-md-6 form-group">
<input type="text" name="name" class="form-control" id="name" placeholder="Your Name" data-rule="minlen:4" data-msg="Please enter at least 4 chars" />
<div class="validate"></div>
</div>
<div class="col-md-6 form-group">
<input type="email" class="form-control" name="email" id="email" placeholder="Your Email" data-rule="email" data-msg="Please enter a valid email" />
<div class="validate"></div>
</div>
</div>
<div class="form-group">
<input type="text" class="form-control" name="subject" id="subject" placeholder="Subject" data-rule="minlen:4" data-msg="Please enter at least 5 chars of subject" />
<div class="validate"></div>
</div>
<div class="form-group">
<textarea class="form-control" name="story" rows="5" data-rule="required" data-msg="Please Share Something" placeholder="Your Story"></textarea>
<div class="validate"></div>
</div>
<div class="mb-3">
<div class="loading">Loading</div>
<div class="error-message"></div>
<div class="sent-message"> Your post has been sent. Thank you!</div>
</div>
<div class="text-center"><button type="submit"> Send Story </button></div>
</form>
</div>
</div>
</div>

PostController

public function store(Request $request)
{
$response = Posts::create($request->all());
if ($response) {
return redirect()->back()
->with(['msg' => 'post has been added', 'status' => 201]);
} else {
return redirect()->back()
->with(['msg' => 'an issue occured', 'status' => 201]);
}
}

这就是我提交时的样子,即使我在数据库中获得了数据。

由于您已经提交了表单,现在您无法访问以前的路线,因此一段时间后无法返回。其他时候,该特定选项卡(对于基于JavaScript的网站(或服务器会话(对于服务器渲染的网站(上的浏览器历史记录上没有返回路线,因为您可以直接访问特定路线。

所以我一直建议避免使用return redirect()->back();,而是使用您想要返回的特定路线。如return redirect()->route('hello');

使用此代码:

if ($response) {
return redirect()->route('')->with(['msg' => 'Post has been added', 'status' => 201]);
} else {
return redirect()->route('')->with(['msg' => 'An error occured', 'status' => 201]);
}

在路线功能中定义路线。

最新更新