質問するログイン新規登録

質問編集履歴

2

createset.phpを変更

2019/10/22 12:45

投稿

Katsuma-F
Katsuma-F

スコア6

title CHANGED
File without changes
body CHANGED
@@ -207,4 +207,33 @@
207
207
 
208
208
  Undefined index: image in /Applications/MAMP/htdocs/Vinyl_App/createset.php on line 3
209
209
  Undefined index: image in /Applications/MAMP/htdocs/Vinyl_App/createset.php on line 4
210
- と、出力されました。
210
+ と、出力されました。
211
+
212
+ -----
213
+ 最終的にこのコードになりました。
214
+
215
+ ```createset.php
216
+ <?php
217
+ if (!empty($_POST)) {
218
+ if ($_FILES['image'] !== '' && $_POST['title'] !== '' && $_POST['description'] !== '') {
219
+ $image = date('YmdHis') . $_FILES['image']['name'];
220
+ move_uploaded_file($_FILES['image']['tmp_name'], __DIR__ . '/card_image' . '/' . $image);
221
+ $card_image = $image;
222
+
223
+ // パーツセットの情報をデータベースに保存
224
+ $card = $db->prepare('INSERT INTO posts SET card_image=?, title=?, description=?, user_id=?, created_at=NOW()');
225
+ $card->execute(array(
226
+ $card_image,
227
+ $_POST['title'],
228
+ $_POST['description'],
229
+ $user['id']
230
+ ));
231
+
232
+ header('Location: mypage.php');
233
+ exit();
234
+ }
235
+ }
236
+
237
+ ?>
238
+
239
+ ```

1

createset.phpのコードを変更しました。

2019/10/22 12:45

投稿

Katsuma-F
Katsuma-F

スコア6

title CHANGED
File without changes
body CHANGED
@@ -164,4 +164,47 @@
164
164
  ```
165
165
  で、投稿、表示しています。 (in mypage.php)
166
166
 
167
- <img src="<?php ?>">この形に沿って、もしくはそれ以外の方法でもいいので画像を出力する正しい方法について、回答をお願いします。
167
+ <img src="<?php ?>">この形に沿って、もしくはそれ以外の方法でもいいので画像を出力する正しい方法について、回答をお願いします。
168
+
169
+
170
+ ----
171
+ やはり、アクセス権を775, 777に変えて試しみましたが画像のアップロードができません。
172
+ 画像アップロードができない原因となっているコードを教えていただきたいです。
173
+
174
+ $_POST['image'] = $image を $_POST['card_image'] = $image に変えました。
175
+ ```createset.php
176
+ if (!empty($_POST)) {
177
+ if ($_POST['image'] !== '' && $_POST['title'] !== '' && $_POST['description'] !== '') {
178
+ $image = date('YmdHis') . $_FILES['image']['name'];
179
+ move_uploaded_file($_FILES['image']['tmp_name'], __DIR__ . 'card_image/' . $image);
180
+ $_POST['card_image'] = $image;
181
+
182
+ // パーツセットの情報をデータベースに保存
183
+ $card = $db->prepare('INSERT INTO posts SET card_image=?, title=?, description=?, user_id=?, created_at=NOW()');
184
+ $card->execute(array(
185
+ $_POST['card_image'],
186
+ $_POST['title'],
187
+ $_POST['description'],
188
+ $user['id']
189
+ ));
190
+
191
+ header('Location: mypage.php');
192
+ exit();
193
+ }
194
+ }
195
+
196
+ ?>
197
+ ```
198
+
199
+ createset.phpの先頭でこのコードを打つと、
200
+ ```createset.php
201
+ <?php
202
+ $uploaddir = __DIR__ . '/card_image' . '/';
203
+ $uploadfile = $uploaddir . basename(date('YmdHis') . $_FILES['image']['name']);
204
+ var_dump(move_uploaded_file($_FILES['image']['tmp_name'], $uploadfile));
205
+ ```
206
+
207
+
208
+ Undefined index: image in /Applications/MAMP/htdocs/Vinyl_App/createset.php on line 3
209
+ Undefined index: image in /Applications/MAMP/htdocs/Vinyl_App/createset.php on line 4
210
+ と、出力されました。