我想創建一個註冊表單。所以,我創建了一個RegShortController.php
文件,並創建了名爲RegShort.blade.php
的視圖文件。在RegShortController.php
文件中,我使用了一個名爲insert的函數。但是,當我運行的網站,我得到這個錯誤 -如何解決名爲SQLSTATE的Laravel和MySql錯誤[23000]
「
SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'name' cannot be null (SQL: insert into
學術(
名,
用戶名,
PW) values (, ,))
」
那麼,如何解決這一問題?
這裏是RegShort.blade.php文件
不幸的是,我已刪除名稱中的用戶名和密碼屬性,當我修改此主題。現在,我修好了。
<form action="{{ route('RegShort') }}" method="post" enctype="multipart/form-data">
{{ csrf_field() }}
<div class="form-group">
<label>Name : *</label>
<input type="text" class="form-control" name="name">
</div>
<div class="form-group">
<label>Username : *</label>
<input type="text" class="form-control" name="username" required>
</div>
<div class="form-group">
<label>Password : *</label>
<input type="password" class="form-control" name="password">
</div>
<button type="submit" class="btn btn-primary" name="submit">Submit</button>
</form>
這裏是RegShortController.php文件
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use DB;
class RegShortController extends Controller
{
public function index()
{
return view('RegShort');
}
function insert(Request $req)
{
$name = $req->input('name');
$username = $req->input('username');
$password = $req->input('password');
$data = array("name"=>$name,'username'=>$username,"pw"=>$password);
DB::table('academic')->insert($data);
}
}
這裏是我所創建的路線。
Route::any('/RegShort', '[email protected]')->name('RegShort');
值賦給name列或從表中 – scaisEdge
刪除約束你爲什麼不使用'Model' ..? –
您的'name'屬性沒有'用戶名'輸入或'密碼'輸入,這意味着這些輸入的數據無論如何都不會出現在請求中。 –