Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: plik w tle
Forum PHP.pl > Forum > PHP
kielek
Cześć,

Mam następujący problem, struktura plików:

abc/.htaccess
abc/wtle.php

w katalogu:
abc/xyz/
znajduje się kilka zdjęć, plików .png.

Czy jest jakaś szansa, możliwośc, aby po wejściu w jakikolwiek plik w tym katalogu ze zdjęciami odpalić plik wtle.php?
Jeżeli rozwiązania nie będzie to po prostu złapie ruch htaccessem, przekieruje gościa do pliku php, tam wykonam operacje, a następnie wyświetle .png.
Chciałbym jednak tego uniknąć z uwagi na opóźniony czas wyświetlania zdjęcia.
dzastin
Nie wydaje mi się, żeby istniała taka opcja - zawsze wołasz konkretny zasób i konkretny zasób się załaduje. Co właściwie chcesz uzyskać? Jaki jest kontekst?
kielek
Zbieranie statystyk na podstawie otwartych obrazków
dzastin
Wszystko zależy od tego, jakiego rodzaju potrzebujesz statystyk - możesz np. po prostu parsować access loga. Przy bardziej zaawansowanych statsach będziesz musiał puścić ruch przez jakiś skrypt php, w którym po prostu zrobisz
CODE
<?php
$file = 'test.png';
/** statystyki **/
if (file_exists($file)) {
header("Content-Type: image/png");
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}
phpion
Tak jak napisał ~dzastin, zwracaj obrazek przez PHP. Od siebie dodam, że musisz do tego użyć jeszcze mod_rewrite żeby zamaskować adres. Przykładowo obrazek http://serwer.pl/img/obrazek.jpg tak naprawdę uruchomi skrypt PHP, który zapisze wywołanie obrazka do bazy/pliku po czym zwróci (przykład podał Ci ~dzastin) zawartość pliku z obrazkiem z odpowiednim nagłówkiem.
kielek
Tak jak pisałem w pierwszym poście, chciałem tego uniknąć, obrazki wczytywać będą się w tym momencie wolniej. No, ale niestety, jeżeli nie ma innego wyjścia to będę zmuszony obrazki przepuścić przez php, dzięki za pomoc :-)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.