回答編集履歴
7
コード修正
answer
CHANGED
@@ -55,7 +55,7 @@
|
|
55
55
|
public function add(Request $request)
|
56
56
|
{
|
57
57
|
$this->validate($request, [
|
58
|
-
'file' => 'image|max:3000',
|
58
|
+
'file' => 'required|image|max:3000',
|
59
59
|
]);
|
60
60
|
|
61
61
|
if ($request->file('file')->isValid())
|
6
コード修正
answer
CHANGED
@@ -1,6 +1,12 @@
|
|
1
1
|
このコードで5.4で動くことを確認しました。
|
2
2
|
|
3
3
|
```ここに言語を入力
|
4
|
+
route
|
5
|
+
Route::get('/', 'UploadController@index');
|
6
|
+
Route::post('/add', 'UploadController@add')->name('add');
|
7
|
+
```
|
8
|
+
|
9
|
+
```ここに言語を入力
|
4
10
|
viewファイル
|
5
11
|
|
6
12
|
<!DOCTYPE html>
|
@@ -19,7 +25,7 @@
|
|
19
25
|
@endif
|
20
26
|
<!-- エラーメッセージ表示部分-->
|
21
27
|
|
22
|
-
<form action="" method="post" enctype="multipart/form-data">
|
28
|
+
<form action="{{route('add')}}" method="post" enctype="multipart/form-data">
|
23
29
|
{{ csrf_field() }}
|
24
30
|
<input type="file" name="file">
|
25
31
|
<input type="submit">
|
5
コード修正
answer
CHANGED
@@ -1,17 +1,66 @@
|
|
1
|
+
このコードで5.4で動くことを確認しました。
|
2
|
+
|
1
3
|
```ここに言語を入力
|
2
|
-
|
4
|
+
viewファイル
|
3
|
-
$this->validate($request, [
|
4
|
-
'datafile' => 'image|max:3000',
|
5
|
-
]);
|
6
5
|
|
6
|
+
<!DOCTYPE html>
|
7
|
+
<html>
|
8
|
+
<head>
|
9
|
+
<title>sample</title>
|
10
|
+
<meta charset="utf-8">
|
11
|
+
</head>
|
12
|
+
<body>
|
13
|
+
|
14
|
+
<!-- エラーメッセージ表示部分-->
|
15
|
+
@if ($errors->any())
|
16
|
+
@foreach ($errors->all() as $error)
|
17
|
+
<p>{{ $error }}</p>
|
18
|
+
@endforeach
|
19
|
+
@endif
|
20
|
+
<!-- エラーメッセージ表示部分-->
|
21
|
+
|
22
|
+
<form action="" method="post" enctype="multipart/form-data">
|
23
|
+
{{ csrf_field() }}
|
7
|
-
|
24
|
+
<input type="file" name="file">
|
25
|
+
<input type="submit">
|
26
|
+
</form>
|
27
|
+
</body>
|
28
|
+
</html>
|
29
|
+
```
|
30
|
+
|
31
|
+
```ここに言語を入力
|
32
|
+
コントローラー
|
33
|
+
|
34
|
+
<?php
|
35
|
+
|
36
|
+
namespace App\Http\Controllers;
|
37
|
+
|
38
|
+
use Illuminate\Http\Request;
|
39
|
+
|
40
|
+
class TestController extends Controller
|
8
41
|
{
|
42
|
+
//view
|
43
|
+
public function index()
|
44
|
+
{
|
45
|
+
return view('index');
|
46
|
+
}
|
47
|
+
|
48
|
+
//postした後の処理
|
49
|
+
public function add(Request $request)
|
50
|
+
{
|
51
|
+
$this->validate($request, [
|
52
|
+
'file' => 'image|max:3000',
|
53
|
+
]);
|
54
|
+
|
55
|
+
if ($request->file('file')->isValid())
|
56
|
+
{
|
9
|
-
|
57
|
+
//アップロード成功時の処理
|
58
|
+
}
|
59
|
+
}
|
10
60
|
}
|
11
|
-
else
|
12
|
-
{
|
13
|
-
//失敗時の処理
|
14
|
-
}
|
15
61
|
```
|
16
62
|
|
63
|
+
エラーが出た場合は元のviewファイルにリダイレクトし、エラーメッセージを表示してくれます。エラーメッセージを変えたい場合は、resources/lang/en/validation.phpを直接いじるか、追加するなりで対応できます。詳しくはここで解説してます。
|
64
|
+
[https://qiita.com/komatzz/items/422bcba9847ca3a79fe9](https://qiita.com/komatzz/items/422bcba9847ca3a79fe9)
|
65
|
+
|
17
|
-
こ
|
66
|
+
一度これに合わせてコードを書きなおしてみてください。
|
4
コード修正
answer
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
```ここに言語を入力
|
2
2
|
// バリデーションルール
|
3
3
|
$this->validate($request, [
|
4
|
-
'
|
4
|
+
'datafile' => 'image|max:3000',
|
5
5
|
]);
|
6
6
|
|
7
7
|
if ($request->file('datafile')->isValid())
|
3
コード修正
answer
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
'file' => 'image|max:3000',
|
5
5
|
]);
|
6
6
|
|
7
|
-
if ($request->file('
|
7
|
+
if ($request->file('datafile')->isValid())
|
8
8
|
{
|
9
9
|
//アップロード成功時の処理
|
10
10
|
}
|
2
プログラムの修正
answer
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
'file' => 'image|max:3000',
|
5
5
|
]);
|
6
6
|
|
7
|
-
if ($request->file('file')->isValid(
|
7
|
+
if ($request->file('file')->isValid())
|
8
8
|
{
|
9
9
|
//アップロード成功時の処理
|
10
10
|
}
|
1
追記
answer
CHANGED
@@ -14,4 +14,4 @@
|
|
14
14
|
}
|
15
15
|
```
|
16
16
|
|
17
|
-
こんな感じですかね。
|
17
|
+
こんな感じですかね。5.3だとこれで動きます。5.4は未検証なので動かなかったらすみません・・・
|