gpt4 book ai didi

php - 如何将表单数据提交到MySQL数据库

转载 作者:行者123 更新时间:2023-11-29 16:06:47 24 4
gpt4 key购买 nike

我对 Laravel 和一般编码还比较陌生。我正在尝试使用 Eloquent 并将数据从我的表单传递到 MySQL 数据库。我可以“提交”而没有任何错误,但看不到表中的数据。当我试图解决这个问题时,我觉得我的代码变得越来越困惑,我希望对我的代码进行审查。通过阅读教程、书籍和审查其他人的代码,我尝试了几种不同的方法来做到这一点。

路线

Route::post('submit', function (Request $request) {
$data = $request->validate([
'title' => 'required|max:255',
'category' => 'required|max:255',
'content' => 'required|max:900',
]);
return redirect('submit');
});

Controller

<?php

public function store(Request $request)
{
Post::create([
'title' => $request->title,
'category' => $request->category,
'content' => $request->content,
]);

return redirect('views.submit');
}

View / Blade

<div>
<form action='' method='post'>
@csrf
<p><label>Title</label><br/>
<input type='text' name='title' value=''><?php if (isset($error)) {
echo $_POST['title'];
}?></p>
<p><label>Category</label><br/>
<textarea name='category' cols='60' rows='10'><?php if (isset($error)) {
echo $_POST['category'];
}?></textarea></p>
<p><label>Content</label><br/>
<textarea name='content' cols='60' rows='10'><?php if (isset($error)) {
echo $_POST['content'];
}?></textarea></p>
<p><input type='submit' name='submit' value='Submit'></p>
</form>
</div>

我希望这会将数据传递到我名为“博客”的表。

最佳答案

经过多次修改,我终于解决了这个问题。

我做的第一件事是将 Controller 移至/app/books.php

我将代码简化为以下内容:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class books extends Model
{
protected $fillable = [
'title',
'author',
'category',
];
}

然后我修改了路线以不包含重定向:

Route::post('/submitbook', function (Request $request) {
$data = $request->validate([
'title' => 'required|max:255',
'author' => 'required|max:255',
'category' => 'required|max:255',
]);

也许最大的决议是偶然发生的。我正在处理一个单独的问题,必须清除我的known_hosts 文件,之后一切正常。

关于php - 如何将表单数据提交到MySQL数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55669134/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com