Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Upload obrazków - jak zrobić to bezpiecznie?
Forum PHP.pl > Forum > Przedszkole
qrzysztof
Witam,

Chcę zrobić upload obrazków na serwer za pomocą 2 sposobów:

1)podania adresu obrazka w sieci (wtedy link będzie przechowywany w bazie)
2)załadowania pliku z własnego dysku (input: type=file)

Mam pytanie głównie odnośnie punktu 1. Jak to zrobić żeby było bezpieczne? Rozumiem, że w grę wchodzi jakaś walidacja, ale jaka? Przecież adresy do grafiki nie muszą kończyć się rozszerzeniem (choć z reguły tak jest). A pod adresem może kryć się niekoniecznie obrazek.

Opłaca się w ogóle coś takiego robić? Widzę, że niektóre takie linki (np. z wyszukiwarki grafiki Google) mają adresy na kilkaset znaków. Zostawić samo dodawanie z dysku? Czy jest jakaś efektywna metoda?
marcio
A co ci ma sie stac jesli w linku podanym od user'a bedzie plik php?

Nic bo kod php sie nie wykonac to nie RFI.

Jedyne co to sprawdzaj czy adres www jest poprawny i czy istnieje dana strona poprostu wyslij do niej ping.

Jedyne co ale niej jestem pewny to jesli w remote pliku bedzie kod html/js czy sie on nie wykona lub tak, zawsze mozesz dodac htmlspecialchars() jesli np znacznik <a> bedzie wsadzal do <img> czy innych.

potreb
Sprawdzanie mime pliku
qrzysztof
OK. Spróbuję pójść we wskazanych przez Was kierunkach.

A czy i jeśli tak to jakie ograniczenie długości adresu dać w bazie? Widzę, że przesadziłem z tymi kilkuset znakami w pierwszym poście, ale generalnie trzeba chyba ustalić jakiś max w bazie?
marcio
Mysle ze max 100-120 znakow to wystarczajaco duzo.
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.