PHPのFTP機能を使用してファイルをアップロードするのはうまくいきます。ファイルが大きすぎない場合はうまくいっています。しかし、ファイルサイズが大きくなると失敗します。PHP FTPモジュールを使用してファイルをチャンクにアップロードするには?
私はFTPに接続し、ファイルをチャンクでアップロードするコードサンプルが必要です。
私の既存のコード。
$ftp_server = ftp_server;
$ftp_user_name=ftp_user_name;
$ftp_user_pass=ftp_user_pass;
$file = $_FILES["file"]["tmp_name"];
$remote_file = 'uploads/'.$_GET['file_name'];
$conn_id = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server");
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
ftp_pasv($conn_id, true);
if (ftp_put($conn_id, $remote_file, $file, FTP_BINARY)) echo "Success"; else echo "Error";
ftp_close($conn_id);
更新
var uploader = new plupload.Uploader({
runtimes : 'html5,flash,silverlight,html4',
browse_button : 'pickfiles', // you can pass an id...
container: document.getElementById('container'), // ... or DOM Element itself
url : 'upload.php',
flash_swf_url : '../js/Moxie.swf',
silverlight_xap_url : '../js/Moxie.xap',
filters : {
max_file_size : '1000mb',
mime_types: [
{title : "Image files", extensions : "jpg,gif,png"},
{title : "Video files", extensions : "mp4,wmv"}
]
},
init: {
PostInit: function() {
document.getElementById('filelist').innerHTML = '';
document.getElementById('uploadfiles').onclick = function() {
uploader.start();
return false;
};
},
FilesAdded: function(up, files) {
plupload.each(files, function(file) {
document.getElementById('filelist').innerHTML += '<div id="' + file.id + '">' + file.name + ' (' + plupload.formatSize(file.size) + ') <b></b></div>';
});
},
UploadProgress: function(up, file) {
document.getElementById(file.id).getElementsByTagName('b')[0].innerHTML = '<span>' + file.percent + "%</span>";
},
Error: function(up, err) {
document.getElementById('console').appendChild(document.createTextNode("\nError #" + err.code + ": " + err.message));
}
}
});
uploader.init();
正確には何が失敗しますか?チャンクでのアップロードが助けになると思わせるものは何ですか? –
HTTPリクエストはリセットされますか?おそらく、PHPコードの実行時間を最大限に超えているからでしょう。なぜそれを長く設定しないのですか? –
私は既に72000に変更されていますが、これに達する前に。それはリセットされています。 – AWE