Bir dizindeki bir dosyadan php bir görüntü gösteriliyor

0 Cevap php

Ben (public_html dizinin dışında) sunucu kamu bakan kısmının dışında bulunan bir dizinde birkaç görüntü var. Ben çıktı, sonra bir php dosyası ile html sonucu görüntü içeriğini okumak mümkün olmak istiyorum.

Örneğin, ben aşağıdaki kaynak kodu ile getimg.php adında bir php dosyası var:

header('Content-type: image/jpeg');

$dir = '/home/server/images/';
$file_name = addslashes($_GET['file']);

readfile('' . $dir . '' . $file_name . '.jpg');

getimg.php, görüntüleri dizinde bir jpg görüntü içeriğini okur sonra bir kullanıcıya görüntüyü görüntülemek istediğiniz zaman aşağıdaki kodu kullanarak başvurulmaktadır:

<img src="getimg.php?file=name_of_image_file">

Getimg.php dosyası da kullanıcı aslında onlar (bu basitlik aşkına yukarıda gösterilen değil, vb) görüntülemeye çalıştığınız görüntüyü sahibi, kaydedilir emin olmak için bazı doğrulama kontrollerini yapar. Bu yaklaşım, görüntü dosyaları erişimi kontrol etmek içindir. Ancak, eldeki meselesi değildir.

İşte sorun: Yukarıda yaklaşım / kod sadece Chrome tarayıcısında çalışıyor. Görüntülerin düzgün IE, FF, Safari veya Opera görüntüleme değildir. Herhangi bir bu çalışma ya da nasıl düzgün bunu yapmak için neden bir fikir?

Notes:

  • I am trying to avoid using mysql to store the images due to the large quantity of images. Being able to utilize the filesystem is greatly preferable here.

  • The solution must be cross browser friendly.

  • In reality, the image can be a jpg, png, or gif file. For the sake of simplicity, the above code only handles jpg images.

  • I doubt it is relevant, but I am NOT using jQuery. And no, I will not alter my entire site to use jQuery. Any "use jQuery" posts will automatically receive a downvote. I don't hate jquery.. it's just not the right solution for my site.

UPDATE

Sorun kodu kendisi ile değildi. Ben otomatik olarak ayarlanır php.ini dosyamın bir oturum açma doğrulama komut dosyası içerir vardı. Ben tüm tarayıcıları giriş olmadığından, resim görüntüleme değildi. Aptalca bir hata, ancak anlaşılabilir ve sabit. Yukarıdaki kod sadece iyi çalışması gerekir. Ayrıca, yerine file_get_contents arasında readfile () () kullanmak için güncellendi. Ben php kullanarak bir görüntü erişimi kimin kontrol etmek için bir yol arıyor web tarama olan herkes için bu göreve terk gidiyorum.

0 Cevap