2016-04-09 17 views
1

jQuery FileTree plugin kullanıyorum. Php konektörü bir klasörün içeriğini almak için scandir'i kullanır. Görüntüleri yükledikten sonra, uploader komut dosyası bir "thumbs" klasörü oluşturur ve ardından resmin küçük bir sürümünü oluşturur ve orada saklar.PHP Alt klasörleri gizle SCANDIR

Kullanıcılar, her bir görüntü klasörü içindeki dosyalarda çalışacak, ancak bunların her bir görüntü klasörü içindeki "başparmak" klasörünü görmesini istemiyorum. Başparmak klasörünü başka bir yere taşıyabilirdim, ama bu büyük bir girişim olurdu.

"Başparmak" klasörünü oluşturmanın bir yolu, yükleme komut dosyasım scandir tarafından görünmez bir gizli klasör oluşturur?

$files = scandir($postDir); 
$returnDir = substr($postDir, strlen($root)); 

enter image description here

+1

php'de scandir tarafından bulunan her şeyi kontrol etmek için is_dir komutunu kullanabilir ve diziden kaldırabilirsiniz. Bu jquery olsa da yararlı olduğundan emin değilim. – Josiah

+0

Filtrelemeyi yapacak olan gerçek kod bir php betiğidir. Dosya listesini jquery sağlamak için çalışan "bağlayıcı" dir. – TARKUS

+1

Bu bağlayıcı ile bana sadece istediğiniz bir şeyi gerçekleştirmek için doğru bir değerle gizli bir alan "onlyFiles" gönderebilirsiniz. Ya da hat 57'yi yorumlayın. – Josiah

cevap

1

, jQueryFileTree's php connector özel bir sürüm yap hattı 55 civarında, filtreleme için bir hariç tutma ekleyerek: Adını geçirerek

if(file_exists($postDir . $file) && $file != '.' && $file != '..' && $file != 'thumbs') { 

Sonra standart konektör yerine o senaryoyu kullanmak JS tarafında ağaç oluştururken fileTree işlevine script parametresi olarak işlev.

(Dizinlerinizin hangi durumlarda olabileceğine bağlı olarak, örneğin her zaman bir "başparmak" klasörünüze sahip olacağınız gibi), if(count($files) > 2)'u da ayarlamanız gerekebilir, ancak bu size temel ilkeyi vermelidir - sadece kendi bağlayıcınızı oluşturun ve gerektiği şekilde özelleştirin.)

+1

Bir çekicilik gibi çalışır. – TARKUS

İlgili konular