Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Dostęp do img tylko po zalogowaniu
radponiewaz
post 16.07.2012, 12:37:31
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 16.07.2012

Ostrzeżenie: (0%)
-----


Cześć,
Przepraszam, jak taki temat już tu był. Porsze o link a nie krytykę. Szukanie tematu wśród kilkiset tysięcy wpisów wbrew pozorom nie jest taki łatwe.

Szukam pomysłu na wyświetlenie kilku zdjęć, ale tylko dla osób, które się zalogują.

Problem jest taki, że jak się ktoś zaloguje, wejdzie w galerię a potem skopiuje URL i się wyloguje, to po wklejeniu tego linku w dowolnej przeglądarce i tak się pokaże ta galeria. W sumie logowanie jest potrzebne tylko po to, aby wyczaić link, potem staje się bezużyteczne... Po co takie logowanie, skoro przed niczym nie chroni(?)

Logowanie zrobiłem z COOKIES, niby działa.

Kombinowałem już na różne sposoby: basename(), ale to ucina tylko ścieżkę a zostawia nazwe pliku, której podstawienie w <img src=...> nic nie da, bo nie jest to przecież prawidłowa ścieżka, tylko sama nazwa.

Kombinowałem z token_id, generowanymi losowo.

Kombinowałem z dynamiczną zmianą nazwy katalogu, w którym są zdjęcia, ale problem jest w momencie, gdy więcej niż jedna osoba próbuje obejrzeć te zdjęcia.

Pliz o pomoc...
Dzięi z góry za wskazówki i podpowiedzi.
Go to the top of the page
+Quote Post
redeemer
post 16.07.2012, 12:40:27
Post #2





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

Ostrzeżenie: (0%)
-----


Dostęp do katalogu z obrazkami zablokuj w pliku .htaccess, a do wystawiania obrazków użyj skryptu PHP który sprawdzi czy ktoś jest zalogowany, jeśli tak wystawia mu obrazek (header + readfile).


--------------------
Go to the top of the page
+Quote Post
piotrex41
post 16.07.2012, 12:40:57
Post #3





Grupa: Zarejestrowani
Postów: 168
Pomógł: 26
Dołączył: 15.09.2011
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Ja bym proponował zrobić logowanie na sesji. I dostęp do podstrony jest tylko jeśli np. $_SESSION['userName'] istnieje, a będzie istnieć tylko jeśli ktoś będzie zalogowany. Polecał bym zrobić metodę to sprawdzania tego, czy ktoś jest zalogowany i na górze pliku z obrazkami zrobić IFa, jeśli w sesji nie ma userName to wyrzuca na stronę główną i po kłopocie smile.gif

EDIT:
Moja metoda sprawdzająca czy parametry sesji istnieją:
  1. /**
  2.  * Metoda sprawdzająca czy użytkownik jest obecnie zalogowany
  3.  *
  4.  * Sprawdza czy paramerty sesji istnieją
  5.  */
  6. public function isLogged()
  7. {
  8. if (isset($_SESSION['userLogin']) && isset($_SESSION['isLogged']))
  9. {
  10. if ($_SESSION['isLogged'] == 1)
  11. {
  12. return TRUE;
  13. }
  14. else
  15. {
  16. return FALSE;
  17. }
  18. }
  19. else
  20. {
  21. return FALSE;
  22. }
  23. }

OFC przy logowaniu trzeba sesję utworzyć i te parametry ustawić, a przy wylogowaniu trzeba zniszczyć sesję, żeby to działało jak trzeba smile.gif

Ten post edytował piotrex41 16.07.2012, 12:45:02


--------------------
www.piotrex41.pl - piotrex41 portfolio
d(-.-)b - Music is my life || PHP is my passion
Go to the top of the page
+Quote Post
radponiewaz
post 16.07.2012, 12:46:44
Post #4





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 16.07.2012

Ostrzeżenie: (0%)
-----


redeemer - dzięki!
piotrex41 - dzięki!

Do redeemer - .htaccess - to dla mnie zamotane, nie dam rady tego zrobić sad.gif

Do piotrex41 - a masz jakiś pomysł na to, żeby w p r o s t y sposób zapobiegać wyświetlania img po wklejeniu URL?
Go to the top of the page
+Quote Post
redeemer
post 16.07.2012, 12:51:47
Post #5





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

Ostrzeżenie: (0%)
-----


Cytat(radponiewaz @ 16.07.2012, 13:46:44 ) *
...
Do redeemer - .htaccess - to dla mnie zamotane, nie dam rady tego zrobić sad.gif
...

Kod
deny from all


--------------------
Go to the top of the page
+Quote Post
piotrex41
post 16.07.2012, 12:55:26
Post #6





Grupa: Zarejestrowani
Postów: 168
Pomógł: 26
Dołączył: 15.09.2011
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Chyba tylko .htaccess może zapobiec wyświetlaniu IMG po wklejeniu jego adresu do przeglądarki.

Możesz jeszcze spróbować, zmieniać nazwę katalogu po utworzeniu sesji, a po jej zniszczeniu lub braku istnienia wraca do pierwotnej nazwy, której nikt nie zna.
Np. masz obrazki w katalogu imaaageees, ale gdy sesja istnieje ten katalog nazywa się img012345 (cyferki losowe), ale gdy nie ma sesji (inna przeglądarka, wylogowanie) to ten katalog tymczasowy nie istnieje, więc nie pokaże zdjęcia, ale ma to minus, jak kilka osób będzie chciało obejrzeć zdjęcia.

Można by jeszcze bawić się w katalogi tymczasowe, żyjące puki żyje sesja, ale nie wiem na ile będzie to wydajne, dla każdej sesji tworzyć katalog tymczasowy, przenosić tam zdjęcia które ktoś ogląda i kasować katalog po wylogowaniu/zniszczeniu sesji.

Mimo wszystko polecam .htaccess smile.gif


--------------------
www.piotrex41.pl - piotrex41 portfolio
d(-.-)b - Music is my life || PHP is my passion
Go to the top of the page
+Quote Post
radponiewaz
post 16.07.2012, 13:04:28
Post #7





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 16.07.2012

Ostrzeżenie: (0%)
-----


Cytat(redeemer @ 16.07.2012, 13:51:47 ) *
Kod
deny from all


smile.gif
OK, chyba z tym powalczę

Cytat(piotrex41 @ 16.07.2012, 13:55:26 ) *
Chyba tylko .htaccess może zapobiec wyświetlaniu IMG po wklejeniu jego adresu do przeglądarki.

Możesz jeszcze spróbować, zmieniać nazwę katalogu po utworzeniu sesji, a po jej zniszczeniu lub braku istnienia wraca do pierwotnej nazwy, której nikt nie zna.
Np. masz obrazki w katalogu imaaageees, ale gdy sesja istnieje ten katalog nazywa się img012345 (cyferki losowe), ale gdy nie ma sesji (inna przeglądarka, wylogowanie) to ten katalog tymczasowy nie istnieje, więc nie pokaże zdjęcia, ale ma to minus, jak kilka osób będzie chciało obejrzeć zdjęcia.

Można by jeszcze bawić się w katalogi tymczasowe, żyjące puki żyje sesja, ale nie wiem na ile będzie to wydajne, dla każdej sesji tworzyć katalog tymczasowy, przenosić tam zdjęcia które ktoś ogląda i kasować katalog po wylogowaniu/zniszczeniu sesji.

Mimo wszystko polecam .htaccess smile.gif


No właśnie próbowałem ze zmianami nazw katalogów, ale problem jest przy wielodostępie sad.gif

No nic - pomęczę sie z .htaccesem
Dzięki.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 20.07.2025 - 10:45