无法在 laravel 5.8 中上传图片
unable to uplaod an image in laravel 5.8
我尝试使用 Laravel 控制器上传图片
public function store(Request $request)
{
$new=new Verify;
$new->user_id=Auth::id();
$new->message=$request->message;
if($request->hasfile('image'))
{
$file=$request->file('image');
$extension=$file->getClientOriginalExtension();
$filename=time() ."." . $extension;
$file->move('uploads/Verify',$filename);
$new->image=$filename;
}
$new->save();
return redirect()->back();
我的迁移表是这样的
public function up()
{
Schema::create('verifies', function (Blueprint $table) {
$table->bigIncrements('id');
$table->integer('user_id')->nullable();
$table->string('message')->nullable();
$table->string('image')->nullable();
$table->timestamps();
});
}
用户 ID 和消息等字段正在填充,但图像字段仍为空
代码的html如
<table class="table">
<tr>
<th>Your message</th>
</tr>
<tr>
<td>
<form action="{{route('Verifying')}}" method="POST">
@csrf
<textarea name="message" id="message" cols="5" rows="5"></textarea>
</td>
</tr>
<tr>
<th>Your Cnic</th>
</tr>
<tr>
<td>
<input type="file" name="image" id="image">
</td>
</tr>
<tr>
<td>
<input type="submit">
</td>
</tr>
</form>
</table>
谁能指导我哪里出了问题?为什么图片无法上传...
使用 enctype="multipart/form-data"
发送表单,然后它应该可以工作
<form action="{{route('Verifying')}}" method="POST" enctype="multipart/form-data">
然后它将起作用
为什么我们添加 enctype
enctype 属性指定表单数据在提交给服务器时应该如何编码。
我尝试使用 Laravel 控制器上传图片
public function store(Request $request)
{
$new=new Verify;
$new->user_id=Auth::id();
$new->message=$request->message;
if($request->hasfile('image'))
{
$file=$request->file('image');
$extension=$file->getClientOriginalExtension();
$filename=time() ."." . $extension;
$file->move('uploads/Verify',$filename);
$new->image=$filename;
}
$new->save();
return redirect()->back();
我的迁移表是这样的
public function up()
{
Schema::create('verifies', function (Blueprint $table) {
$table->bigIncrements('id');
$table->integer('user_id')->nullable();
$table->string('message')->nullable();
$table->string('image')->nullable();
$table->timestamps();
});
}
用户 ID 和消息等字段正在填充,但图像字段仍为空 代码的html如
<table class="table">
<tr>
<th>Your message</th>
</tr>
<tr>
<td>
<form action="{{route('Verifying')}}" method="POST">
@csrf
<textarea name="message" id="message" cols="5" rows="5"></textarea>
</td>
</tr>
<tr>
<th>Your Cnic</th>
</tr>
<tr>
<td>
<input type="file" name="image" id="image">
</td>
</tr>
<tr>
<td>
<input type="submit">
</td>
</tr>
</form>
</table>
谁能指导我哪里出了问题?为什么图片无法上传...
使用 enctype="multipart/form-data"
发送表单,然后它应该可以工作
<form action="{{route('Verifying')}}" method="POST" enctype="multipart/form-data">
然后它将起作用
为什么我们添加 enctype
enctype 属性指定表单数据在提交给服务器时应该如何编码。