Avatar
Matúš Petrofčík
Šéfredaktor
Avatar
Matúš Petrofčík:

Dobrý večer všetkým.
Vyskytol sa mi pri validovaní uploadnutých súborov menší problém so zabezpečením :D Postrebujem zistiť, či obrázok je naozaj typu jpeg (jpg). Robím to asi takto (z $_FILES som si urobil lepšie prístupné pole $pictures):

$pictures[$i]["type"] !== "image/jpeg"

Lenže ak som si vytvoril súbor PNG a len premenoval koncovku na JPG, tak to aj tak prejde validátorom, čo ale nechcem :)
Ďakujem za všetky rady.

Odpovědět 23.10.2014 22:44
obsah kocky = r^2 ... a preto vlak drnká
Avatar
Marek Z.
Redaktor
Avatar
Odpovídá na Matúš Petrofčík
Marek Z.:

Ahoj, na to ti doporučím postarší, ale stále dobrý článek od Kuby Vrány. -> http://php.vrana.cz/…zivatele.php

Tedy pro zjištění typu souboru použiješ tmp_name.

Editováno 24.10.2014 8:39
Nahoru Odpovědět 24.10.2014 8:39
Chybami se člověk učí, běžte se učit jinam!
Avatar
Matúš Petrofčík
Šéfredaktor
Avatar
Odpovídá na Marek Z.
Matúš Petrofčík:

Mne sa temp name uklada ako DACO345.tmp, takze to nezistim. Podla mena uploadovaneho suboru (jeho koncovky) je nevhodne, podla mime typu v $_FILES poli to robim teraz a tiez sa to da jednoducho oklamat, funkcia na zistenie mime tyypu get_mime_content je v php oznacena ako zastarala, a getimagesize nemozem pouzit pretoze nezistim ci ide o jpeg, gif alebo png... Tak ako? :(

// skusim sa este pozriet lepsie na getimagesize lebo ta vyhadzuje nejake info o obrazku a mozno sa to bude dat s nou

Editováno 24.10.2014 12:25
Nahoru Odpovědět  +1 24.10.2014 12:21
obsah kocky = r^2 ... a preto vlak drnká
Avatar
Matúš Petrofčík
Šéfredaktor
Avatar
Matúš Petrofčík:

*mime_type_content

Nahoru Odpovědět 24.10.2014 12:27
obsah kocky = r^2 ... a preto vlak drnká
Avatar
Ori
Člen
Avatar
Odpovídá na Matúš Petrofčík
Ori:

skus sa pozrieť na http://php.net/…nfo-open.php a všetky funkcie s tým súvisiace

 
Nahoru Odpovědět 24.10.2014 12:38
Avatar
Marek Z.
Redaktor
Avatar
Odpovídá na Matúš Petrofčík
Marek Z.:

Funkce getimagesize ti řekne pravdivé údaje o obrázku.

echo getimagesize($_FILES['obrazek']['tmp_name'])['mime'];

A dostaneš pravdivý typ souboru, nehledě na koncovku.

Nahoru Odpovědět 25.10.2014 10:18
Chybami se člověk učí, běžte se učit jinam!
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.