Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Jak zebezpieczyć zdjęcia, aby obejrzeć mógł tylko zalogowany?
Forum PHP.pl > Forum > Przedszkole
in5ane
Witam, chciałem się zapytać jak można zabezpieczyć zdjęcia na serwerze, aby obejrzeć mógł tylko zalogowany użytkownik?
elektrrrus
Zależy z czego konkretnie używasz. Możesz np. trzymać nazwy plików w bazie dabych, albo pliku, i pokazywać te nazwy wraz z linkami do zdjęć tylko zalogowanym. Przydałoby się tez jakoś ukryć sam folder ze zdjęciami. Chcesz te zdjęcia pokazywać na www, czy tylko udostępnić do downloadu? Jak to drugie to sprawa jest względnie prosta. Powiedz konkretnie czego potrzebujesz...
in5ane
Żeby ludzie mogli zdjęcia oglądać po zalogowaniu.

A przed zalogowaniem, żeby nie mogli oglądać.
elektrrrus
Jeżeli bardzo zależy Ci na utajnieniu tych zdjęć, rozważ możliwość zapisania ich w bazie danych. Mam jeszcze inny pomysł. Jeśli serwer z którego korzystasz to apache, katalog ze zdjęciami możnaby uchronić przez przeglądaniem odpowedznim plikiem .htaccess, a same nazwy zdjęć generować losowo na przykład przy uploadzie na serwer. Nie wiem jak wygląda Twój skrypt, podaj jakieś szczegóły. Czy te zdjęcia uploadujesz przez stronę, czy wrzucasz sam? Szkielet samego skryptu mógłby wyglądać tak:
  1. <?php
  2. if($_SESSION['zalogowany']) // ta zmienną określasz czy dany użyszkodnik strony jest zalogowany
  3. {
  4.  
  5. //pobranie z bady danych lub pliku nazw zdjęć i ew, opisów,
  6. //generowanie indeksu zdjec wraz z konkretnymi linkami do zdjęć
  7. //jeśli w url jest parametr,który sobie przyjmiesz za opis zdjęcia wyświetl je
  8.  
  9. }
  10. ?>

Jeszcze jedna możliwość mi przychodzi do głowy, prostsza nawet, masz katalog ze zdjęciami, jesli user jest zalogowany traktujesz go(ten katalog) tak:
  1. <?php
  2. $dir_arr = scandir('zdecia/');
  3. array_shift($dir_arr);
  4. array_shift($dir_arr);
  5. foreach($dir_arr as $file)
  6. {
  7. echo "<a href="zdjecia/$file">$file</a></br>n";
  8. }
  9. ?>
To wyświetli prosty indeks plików w danym katalogu.
To na razie tyle, nie wiem czy o to konkretnie chodziło...
in5ane
No mam serwer apache.


A zdjęcia uploaduje skryptem i on losuje samemu nazwy np. &$bn&&997N$@8n@$.jpg
Daimos
mozesz jeszcze wyswietlac grafike za pomoca php, generujac obrazki z "sekretnego" winksmiley.jpg katalogu za pomoca GD
dzieki temu mozesz np. zrobic obrazek domyslny, ktory widza nie zalogowani (np. taki z napisem, ze musisz sie zalogowac...)
nrm
1. obrazki uploadujesz poziom wyzej niz public_html
2. odczytujesz je skryptem i wyswietlasz badz nie wg zapotrzebowania
Spawnm
  1. <form action=tenplik.php method=post>
  2. <input type=text name=password>
  3. <input type=submit value=ok>
  4. </form>
  1. <?
  2. if($_POST['password']==haslo) {
  3. echo " <img src=obrazek.jpg> ";
  4. }
  5. ?>
  1. </body></html>


może być coś takiego:)
kwiateusz
ale jak ktos dostanie linka bezpośrednio do zdjęcia to otworzy w przeglądarce i jest... sposób normanos jest lepszy

btw kogo naszło odkopywac taki antyk haha.gif
Spawnm
nie był głeboko blink.gif
a chciałem przekazac pytajacemu mój pomysł smile.gif
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.