猿问

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

我对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');

});

控制器


<?php


public function store(Request $request)

{

    Post::create([

        'title' => $request->title,

        'category' => $request->category,

        'content' => $request->content,

    ]);


    return redirect('views.submit');

}

查看/刀片


<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>

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


慕慕森
浏览 309回答 1
1回答

弑天下

因此,我在进行了几处更改之后终于解决了这个问题。我做的第一件事是将控制器移至/app/books.php我将代码简化为以下代码:<?phpnamespace App;use Illuminate\Database\Eloquent\Model;class books extends Model{&nbsp; &nbsp; protected $fillable = [&nbsp; &nbsp; &nbsp; &nbsp; 'title',&nbsp; &nbsp; &nbsp; &nbsp; 'author',&nbsp; &nbsp; &nbsp; &nbsp; 'category',&nbsp; &nbsp; ];}然后,我将路由修改为不包括重定向:Route::post('/submitbook', function (Request $request) {&nbsp; &nbsp; $data = $request->validate([&nbsp; &nbsp; &nbsp; &nbsp; 'title' => 'required|max:255',&nbsp; &nbsp; &nbsp; &nbsp; 'author' => 'required|max:255',&nbsp; &nbsp; &nbsp; &nbsp; 'category' => 'required|max:255',&nbsp; &nbsp; ]);也许最大的解决方案是由a幸发生的。我当时正在处理一个单独的问题,必须清除我的known_hosts文件,然后一切正常。
随时随地看视频慕课网APP
我要回答