phpでファイルをアップロードできるか?
phpでのファイルアップロードについて質問します。
再質問となりますが、実際にコードを作成してやってみてうまくいかないので、
あらためて質問させていただきました。
eラーニング教材(htmlで作成)で、動画ファイルをストリーミングさせることになりました。
ウェブサーバ側へのアップロードする画面として、move_uploaded_file()やis_uploaded_file()メソッドをつかっていましたが、ストリーミングサーバ側としてFTP通信でポート20、21からのみのアップロードのみ許可されているとのことです。
ftp_put()メソッドを使ってアップロードさせたところうまくいきません。
**************<コード>*************
$ftp_server="【サーバー名】";
$ftp_user_name="【アカウント名】";
$ftp_user_pass="【パスワード】";
$conn_id = ftp_connect($ftp_server);
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
if ((!$conn_id) || (!$login_result)) {
echo "FTP接続に失敗しました。";
exit;
} else {
echo "FTP接続に成功しました。";
}
ここまででFTPの接続はできているようです。
その直後に、
$local_file="【ローカルのファイルパス】";
$remote_file="【FTPサーバー上のアップロードファイルパス】";
if (!ftp_put($conn_id, $remote_file, $local_file, FTP_BINARY)) {
echo "FTPアップロードに失敗しました。";
exit;
} else {
echo "FTPアップロードに成功しました。";
}
**************<コード>*************
FTPアップロードに失敗します。
原因がわからなく、こまっています。
ポートの指定が必要なのでしょうか?
おしえてください。
よろしくおねがいたします。
****************
FTP supportはenabled になっています。
phpのバージョンは4または5です。
IE7以上のブラウザ環境を想定しています。
補足
肝心なことが抜けていました。 すみません。 コピー元はWindowsXP、 (ファイルサーバはWindows2000) コピー先はUnix(のはず)です。 FTPクライアントはXPで動作させます。 よろしくお願い致します。