質問編集履歴
5
ソースコードをショートコードにしてあったので改編。wordpressのタグを追加
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
PHPのmove_uploaded_fileがfalseを返し、画像がアップロードできない。
|
1
|
+
wordpressでPHPのmove_uploaded_fileがfalseを返し、画像がアップロードできない。
|
test
CHANGED
@@ -3,6 +3,8 @@
|
|
3
3
|
wordpressで会員制のサイトを作り、フロントエンドからカスタム投稿タイプの投稿を行います。
|
4
4
|
|
5
5
|
その時に画像のアップロードも行います。
|
6
|
+
|
7
|
+
ソースコードはショートコード化してあり、固定ページにショートコードを書き込んで呼び出してあります。
|
6
8
|
|
7
9
|
|
8
10
|
|
@@ -26,7 +28,7 @@
|
|
26
28
|
|
27
29
|
```ここに言語を入力
|
28
30
|
|
29
|
-
<form method="post" action="
|
31
|
+
<form method="post" action="固定ページのurl" enctype="multipart/form-data">
|
30
32
|
|
31
33
|
<input type="file" name="img1" multiple="false">
|
32
34
|
|
@@ -36,7 +38,7 @@
|
|
36
38
|
|
37
39
|
```
|
38
40
|
|
39
|
-
|
41
|
+
固定ページから呼び出されるショートコードの内容
|
40
42
|
|
41
43
|
```ここに言語を入力
|
42
44
|
|
4
test
CHANGED
File without changes
|
test
CHANGED
@@ -17,10 +17,6 @@
|
|
17
17
|
送信フォームからは問題なく画像が送信されているようなのですが、move_uploaded_file()がfalseを返します。
|
18
18
|
|
19
19
|
他にエラーは出力されていません。
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
is_uploaded_file関数を使用したところ
|
24
20
|
|
25
21
|
|
26
22
|
|
3
コードを一部変更したので追記しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -134,7 +134,7 @@
|
|
134
134
|
|
135
135
|
["name"]=>
|
136
136
|
|
137
|
-
string(10) "
|
137
|
+
string(10) "example.jpg"
|
138
138
|
|
139
139
|
["type"]=>
|
140
140
|
|
2
説明に一部間違いがあったので追記
test
CHANGED
File without changes
|
test
CHANGED
@@ -40,7 +40,7 @@
|
|
40
40
|
|
41
41
|
```
|
42
42
|
|
43
|
-
|
43
|
+
save.php
|
44
44
|
|
45
45
|
```ここに言語を入力
|
46
46
|
|
1
コードを一部変更したので追記しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -20,6 +20,10 @@
|
|
20
20
|
|
21
21
|
|
22
22
|
|
23
|
+
is_uploaded_file関数を使用したところ
|
24
|
+
|
25
|
+
|
26
|
+
|
23
27
|
###該当のソースコード
|
24
28
|
|
25
29
|
送信フォーム
|
@@ -39,6 +43,18 @@
|
|
39
43
|
|
40
44
|
|
41
45
|
```ここに言語を入力
|
46
|
+
|
47
|
+
if (is_uploaded_file($_FILES['img1']['tmp_name'])){
|
48
|
+
|
49
|
+
echo 'ファイルはアップロードされている。';
|
50
|
+
|
51
|
+
}else{
|
52
|
+
|
53
|
+
echo 'ファイルがアップロードされていない。';
|
54
|
+
|
55
|
+
}
|
56
|
+
|
57
|
+
|
42
58
|
|
43
59
|
$uploaddir = '/var/www/vhosts/example.com/uploads/';
|
44
60
|
|
@@ -92,11 +108,21 @@
|
|
92
108
|
|
93
109
|
|
94
110
|
|
95
|
-
また上記のようにvar_dumpでそれぞれに正しく値が渡されているかチェックしてみました。
|
111
|
+
また上記のようにvar_dumpでそれぞれに正しく値が渡されているかチェックしてみました。またis_uploaded_file関数を使用してみました。
|
96
112
|
|
97
113
|
それぞれの結果は下記です。
|
98
114
|
|
99
115
|
|
116
|
+
|
117
|
+
if (is_uploaded_file($_FILES['img1']['tmp_name']))の結果
|
118
|
+
|
119
|
+
```ここに言語を入力
|
120
|
+
|
121
|
+
ファイルがアップロードされていない。
|
122
|
+
|
123
|
+
```
|
124
|
+
|
125
|
+
var_dumpの結果
|
100
126
|
|
101
127
|
```ここに言語を入力
|
102
128
|
|
@@ -140,7 +166,9 @@
|
|
140
166
|
|
141
167
|
|
142
168
|
|
169
|
+
|
170
|
+
|
143
|
-
上記の通り、
|
171
|
+
上記の通り、is_uploaded_file関数では画像はないと判断されているのですが、var_dumpでは正しく画像ファイルが送信されているように見えます。
|
144
172
|
|
145
173
|
|
146
174
|
|