Php Laravel插入数据库
我有以下问题: 我想在数据库中插入输入字段。 这是我的html:Php Laravel插入数据库,php,mysql,laravel,Php,Mysql,Laravel,我有以下问题: 我想在数据库中插入输入字段。 这是我的html: <div class="row"> <form action="{{ action('test@store') }}" method="post"> <input type="hidden" name="_token" value="{{ csrf_token() }}"> <div class="col-md-2 col-sm-2">
<div class="row">
<form action="{{ action('test@store') }}" method="post">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
<div class="col-md-2 col-sm-2">
<label for="MtrNr">MtrNr:</label>
<input type="text" name="MtrNr" class="form-control">
</div>
<div class="col-md-2 col-sm-3">
<label for="Vorname">Vorname:</label>
<input type="text" name="Vorname" class="form-control">
</div>
<div class="col-md-2 col-sm-3">
<label for="Nachname">Nachname:</label>
<input type="text" name="Nachname" class="form-control" >
</div>
<div class="col-md-2 col-sm-2">
<label for="Klassenname">Klassenname:</label>
<input type="text" name="Klassenname" class="form-control">
</div>
<div class="col-md-2 col-sm-2">
<button class="btn btn-primary option-button button_rowAllign" type="submit">Schüler hinzufügen</button>
</div>
</form>
</div>
这是我的路线:
Route::post("{{ action('test@store') }}", "test@store");
问题是,我已经插入了我的数据库。但是当我试图
复制它,它不工作。
对于本地服务器,我使用xampp。
我希望您能帮助我。问题是您只创建了一个新的
Schueler
对象并将数据提供给它。但是你没有把它保存在数据库里。您只做了本地更改
使用此方法保存
public function store(Request $request) {
$user = new schueler;
$user->MatNr = Input::get("MtrNr");
$user->vorname = Input::get("Vorname");
$user->nachname = Input::get("Nachname");
$user->klassenname = Input::get("Klassenname");
$user->save();
}
试着像这样改变你的路线
Route::post("/test", "test@store"); // change /test to /anything you want
在此之前,请确保您已经完成了数据库设置,并且该数据库中有像schuelers这样的所有表-为此,如果您想将记录插入到您错过的数据库中,请在控制器中添加
$user->save()
,请执行php artisan migrate
public function store(Request $request)
{
$user = new schueler;
$user->MatNr = Input::get("MtrNr");
$user->vorname = Input::get("Vorname");
$user->nachname = Input::get("Nachname");
$user->klassenname = Input::get("Klassenname");
$user->save();
}
我觉得你的路线有问题
Route::post("{{ action('test@store') }}", "test@store");
路线应如下所示:
Route::post("schueler/store", "yourcontrollername@store");
//这是示例代码,请使用您的示例代码进行更新。您错过了
$user->save()代码>控制器中的存储区内方法。谢谢,您是对的,该方法已丢失,但问题仍然存在。也许我必须在模型中添加一些东西?Route::post(“{{action('test@store') }}", "test@store"); 这是你的路线代码吗?您的控制器名是什么?是的,但我已将其更改为Route::post(“/test”test@store"); 就像下面评论中描述的那样。控制器名为TestThank,我已经编辑了我的项目,但它不能解决我的问题problem@Rechenmeister那么,您遇到了什么错误或问题?我已经编辑了我的回答如果我启动应用程序,没有php artisan serve,我不会出错。页面只是重新加载,数据库中没有数据。使用php artisan serve,我得到一个错误:SQLSTATE[42S02]:找不到基表或视图:表'datenbank.schuelers'不存在。这是正确的,'舒勒'不存在,只有'舒勒'存在。我不知道laravel从哪里得到了“schuelers”。dophp artisan migrate
first@Rechenmeister谢谢,我已经编辑了我的项目,但它并没有解决我的问题
Route::post("schueler/store", "yourcontrollername@store");