質問編集履歴

1

追記

2019/03/13 10:53

投稿

almihoil
almihoil

スコア12

test CHANGED
File without changes
test CHANGED
@@ -97,3 +97,131 @@
97
97
  phpのバージョンは7です
98
98
 
99
99
  初めての投稿なので説明の仕方があっているのか、わかりやすいのか分かりませんがよろしくお願いします!
100
+
101
+
102
+
103
+
104
+
105
+ ### 追記、修正
106
+
107
+ 回答に書いてある通りの事に注意してコードを書き直してみたのですがやはりアップロードがうまく行きませんでした
108
+
109
+
110
+
111
+ ```php
112
+
113
+ define("FTP_COPY_CONNECT_HOST","**.***.*.**");
114
+
115
+ define("FTP_COPY_LOGIN_USER","testuser");
116
+
117
+ define("FTP_COPY_LOGIN_PASSWD","testpass");
118
+
119
+
120
+
121
+ $fpath = "/var/www/file/Log201900313.zip";
122
+
123
+
124
+
125
+ $ftp = new FtpOperate();
126
+
127
+ $ftp->startCopy($fpath);
128
+
129
+
130
+
131
+
132
+
133
+ class FtpOperate
134
+
135
+ {
136
+
137
+ public function startCopy($fpath)
138
+
139
+ {
140
+
141
+ $ftp = $this->connect();
142
+
143
+ if(!$ftp)
144
+
145
+ {
146
+
147
+ echo "接続失敗";
148
+
149
+ return false;
150
+
151
+ }
152
+
153
+
154
+
155
+ ftp_pasv($ftp,true);
156
+
157
+
158
+
159
+ if(!ftp_put($ftp, basename($fpath), $fpath, FTP_BINARY))
160
+
161
+ {
162
+
163
+ echo "アップロード失敗";
164
+
165
+ ftp_close($ftp);
166
+
167
+ return false;
168
+
169
+ }
170
+
171
+ echo "アップロード完了";
172
+
173
+ ftp_close($ftp);
174
+
175
+ return true;
176
+
177
+ }
178
+
179
+
180
+
181
+ public function connect()
182
+
183
+ {
184
+
185
+ // FTPサーバ接続
186
+
187
+ // デフォルトポート0(21),120秒でタイムアウト
188
+
189
+ $ftp = ftp_connect(FTP_COPY_CONNECT_HOST, 0, 120);
190
+
191
+ if(!$ftp)
192
+
193
+ {
194
+
195
+ echo "接続失敗";
196
+
197
+ return false;
198
+
199
+ }
200
+
201
+ // FTPログイン
202
+
203
+ if(!ftp_login($ftp, FTP_COPY_LOGIN_USER, FTP_COPY_LOGIN_PASSWD))
204
+
205
+ {
206
+
207
+ echo "ログイン失敗";
208
+
209
+ ftp_close($ftp);
210
+
211
+ return false;
212
+
213
+ }
214
+
215
+ return $ftp;
216
+
217
+ }
218
+
219
+ }
220
+
221
+
222
+
223
+ ```
224
+
225
+ 上記のコードで何か間違いはございますでしょうか?
226
+
227
+ そうでなければサーバーの設定であったりFKM様のいう通りphp.iniの問題なのかと思うんですが…