質問編集履歴

2

情報の追加

2022/02/04 00:53

投稿

yoyoyo
yoyoyo

スコア10

test CHANGED
File without changes
test CHANGED
@@ -41,6 +41,221 @@
41
41
  ```
42
42
 
43
43
  となっております。
44
+
45
+ ※追記
44
- 画像は"tasks"というテーブル”image”カラムに保存されていす。
46
+ 画像の保存が3枚中の3枚目しかできていないようです。
45
- のように変更すれば良いでしょうか
47
+ こを修正すれば良いでしょうか
48
+ 下記dd()をした箇所とその結果です。
49
+ テーブル情報も記載いたします。
50
+
51
+ ```PHP
52
+ public function store(TaskRequest $request)
53
+ {
54
+ // taskをデータベースに保存
55
+ $task = new Task;
56
+ $form = $request->except(["image", "_token"]);
57
+ $task->fill($form);
58
+ $task->user_id = $request->user()->id;
59
+ $task->save();
60
+ $tasks = Task::orderBy('deadline', 'desc')->get();
61
+
62
+
63
+ //画像の保存
64
+ $image = new Image;
65
+ $files = $request->file('image');
66
+
67
+ dd($files);
68
+
69
+ foreach($files as $file){
70
+ $image->name = $file->getClientOriginalName();
71
+ $file->store('public/image');
72
+ //ファイルのパスの名前の保存
73
+ // $image->name = basename($image);
74
+ $image->task_id = $task->id;
75
+
76
+ $image->save();
77
+
78
+ }
79
+ // dd($image);
80
+
81
+ return redirect('user/tasks/');
82
+
83
+ //select * from taskmanagement.tasks;
84
+
85
+ }
86
+ ```
87
+ ```dd()
88
+ array:3 [▼
89
+ 0 => Illuminate\Http\UploadedFile {#1402 ▼
90
+ -test: false
91
+ -originalName: "456013_s.jpg"
92
+ -mimeType: "image/jpeg"
93
+ -error: 0
94
+ #hashName: null
95
+ path: "/tmp"
96
+ filename: "php60mWyv"
97
+ basename: "php60mWyv"
98
+ pathname: "/tmp/php60mWyv"
99
+ extension: ""
100
+ realPath: "/tmp/php60mWyv"
101
+ aTime: 2022-02-04 09:49:01
102
+ mTime: 2022-02-04 09:49:01
103
+ cTime: 2022-02-04 09:49:01
104
+ inode: 262491
105
+ size: 199954
106
+ perms: 0100600
107
+ owner: 501
108
+ group: 501
109
+ type: "file"
110
+ writable: true
111
+ readable: true
112
+ executable: false
113
+ file: true
114
+ dir: false
115
+ link: false
116
+ }
117
+ 1 => Illuminate\Http\UploadedFile {#1401 ▼
118
+ -test: false
119
+ -originalName: "3055088_s.jpg"
120
+ -mimeType: "image/jpeg"
121
+ -error: 0
122
+ #hashName: null
123
+ path: "/tmp"
124
+ filename: "php8tc8sS"
125
+ basename: "php8tc8sS"
126
+ pathname: "/tmp/php8tc8sS"
127
+ extension: ""
128
+ realPath: "/tmp/php8tc8sS"
129
+ aTime: 2022-02-04 09:49:01
130
+ mTime: 2022-02-04 09:49:01
131
+ cTime: 2022-02-04 09:49:01
132
+ inode: 262499
133
+ size: 301046
134
+ perms: 0100600
135
+ owner: 501
136
+ group: 501
137
+ type: "file"
138
+ writable: true
139
+ readable: true
140
+ executable: false
141
+ file: true
142
+ dir: false
143
+ link: false
144
+ }
145
+ 2 => Illuminate\Http\UploadedFile {#1400 ▼
146
+ -test: false
147
+ -originalName: "22898799_s.jpg"
148
+ -mimeType: "image/jpeg"
149
+ -error: 0
150
+ #hashName: null
151
+ path: "/tmp"
152
+ filename: "phpAGEnnf"
153
+ basename: "phpAGEnnf"
154
+ pathname: "/tmp/phpAGEnnf"
155
+ extension: ""
156
+ realPath: "/tmp/phpAGEnnf"
157
+ aTime: 2022-02-04 09:49:01
158
+ mTime: 2022-02-04 09:49:01
159
+ cTime: 2022-02-04 09:49:01
160
+ inode: 262503
161
+ size: 367696
162
+ perms: 0100600
163
+ owner: 501
164
+ group: 501
165
+ type: "file"
166
+ writable: true
167
+ readable: true
168
+ executable: false
169
+ file: true
170
+ dir: false
171
+ link: false
172
+ }
173
+ ]
174
+ ```
175
+ ```PHP
176
+ public function store(TaskRequest $request)
177
+ {
178
+ // taskをデータベースに保存
179
+ $task = new Task;
180
+ $form = $request->except(["image", "_token"]);
181
+ $task->fill($form);
182
+ $task->user_id = $request->user()->id;
183
+ $task->save();
184
+ $tasks = Task::orderBy('deadline', 'desc')->get();
185
+
186
+
187
+ //画像の保存
188
+ $image = new Image;
189
+ $files = $request->file('image');
190
+
191
+ // dd($files);
192
+
193
+ foreach($files as $file){
194
+ $image->name = $file->getClientOriginalName();
195
+ $file->store('public/image');
196
+ //ファイルのパスの名前の保存
197
+ // $image->name = basename($image);
198
+ $image->task_id = $task->id;
199
+
200
+ $image->save();
201
+
202
+ }
203
+ dd($image);
204
+
205
+ return redirect('user/tasks/');
206
+
207
+ //select * from taskmanagement.tasks;
208
+
209
+ }
210
+ ```
211
+ ```dd()
212
+ App\Models\Image {#1398 ▼
213
+ #connection: "mysql"
214
+ #table: null
215
+ #primaryKey: "id"
216
+ #keyType: "int"
217
+ +incrementing: true
218
+ #with: []
219
+ #withCount: []
220
+ #perPage: 15
221
+ +exists: true
222
+ +wasRecentlyCreated: true
223
+ #attributes: array:5 [▼
224
+ "name" => "22898799_s.jpg"
225
+ "task_id" => 96
226
+ "updated_at" => "2022-02-04 09:50:29"
227
+ "created_at" => "2022-02-04 09:50:29"
228
+ "id" => 18
229
+ ]
230
+ #original: array:5 [▼
231
+ "name" => "22898799_s.jpg"
232
+ "task_id" => 96
233
+ "updated_at" => "2022-02-04 09:50:29"
234
+ "created_at" => "2022-02-04 09:50:29"
235
+ "id" => 18
236
+ ]
237
+ #changes: array:1 [▼
238
+ "name" => "22898799_s.jpg"
239
+ ]
240
+ #casts: []
241
+ #classCastCache: []
242
+ #dates: []
243
+ #dateFormat: null
244
+ #appends: []
245
+ #dispatchesEvents: []
246
+ #observables: []
247
+ #relations: []
248
+ #touches: []
249
+ +timestamps: true
250
+ #hidden: []
251
+ #visible: []
252
+ #fillable: []
253
+ #guarded: array:1 [▼
254
+ 0 => "*"
255
+ ]
256
+ }
257
+ ```
258
+
259
+ ![テーブル情報](https://ddjkaamml8q8x.cloudfront.net/questions/2022-02-04/38917185-beab-41f7-8f23-588670fd7260.png)
260
+
46
- 御回答どよろしくお願い致します。
261
+ アドバイスうかよろしくお願い致します。

1

カラム情報 補足

2022/02/02 14:07

投稿

yoyoyo
yoyoyo

スコア10

test CHANGED
File without changes
test CHANGED
@@ -41,5 +41,6 @@
41
41
  ```
42
42
 
43
43
  となっております。
44
+ 画像は"tasks"というテーブルの”image”カラムに保存されています。
44
45
  どのように変更すれば良いでしょうか。
45
46
  御回答のほどよろしくお願い致します。