tek bir tıklama üzerinde sunucudan birden fazla dosya indirmek (PHP, WAMP)

5 Cevap php

i tek bir tıklama sunucusu (PHP) birden fazla dosya indirmek için bir ihtiyaç duyuyorum. Bu bir dosya indirmek için ama bir süre (varsayalım dosyaları fark vardır. dizinleri) birden fazla dosya için işe yaramadı mümkündür. i WAMP kullanıyorum, bana yardım edin.

teşekkür ve saygılarımla

tismon

5 Cevap

Gmail çoklu ekleri ile yaptığı gibi sadece sunucudaki dosyaları zip ve arşiv göndermek. En modern işletim sistemleri hiçbir sorun sıkıştırma formatı olmalı, bazıları (bir şey yapmak zorunda kullanıcı olmadan) anında onu yapacağız. Ben PHP biliyorum, ama bir zip kütüphanesi gibi görünüyor, examples on PHP’s website görmüyorum.

Tek isteği ile bir kullanıcıya birden fazla dosya hizmet için bir sunucu almak için bir yol soran eğer, ne soruyorsun oldukça emin değil, o zaman muhtemelen bir zip dosyası veya başka bir arşiv biçimi ile gitmek gerekir.

PHP ile, bu mümkün değil. Her istek için sadece bir dosya hizmet edebilir. Ancak, biraz JavaScript kullanarak birden fazla dosya indirmek için tarayıcı çağırabilirsiniz:

var files = ['fileone.zip', 'filetwo.zip'];
for (var i = 0; i < files.length; i++){
    window.open(files[i], 'Download file');
}

Ama gerçekten çok kötü. Ben sadece bir zip ile gitmek istiyorum.


PS. Bu yöntemle html dosyaları indirmek istiyorsanız, belge sadece {[(1) tarafından ortaya açılan pencerede render almaz sağlamak için, her dosya için Content-Disposition başlık göndermek için gereken }]:

header('Content-Disposition: attachment; filename="todownload.html"');

Sen bir IFrame oluşturmak ve Javascript çeşitli dosya indirme için IFrame kaynağını ayarlayabilirsiniz. Eğer indirme ile zamanlama sorunları için çalıştırmak eğer bir indirme gecikme deneyin veya birden çerçevelerde kullanabilirsiniz (ama sonuncusu çirkin görünüyor) olabilir.

Dosya boyutları küçük iseniz linkleri hatta eki ile kullanıcıya bir e-posta gönderebilir.