![]() |
![]() ![]() |
![]() |
-JanekMietek- |
![]() ![]()
Post
#1
|
Goście ![]() |
Witam!
Chciałem zapytać czy jest jakis sposób na wgranie plików o rozszerzeniu pisanym wielkimi literami na ftp przez formularz w PHP. ![]() Pozdrawiam! |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
a no jest. wyrazenie regularne. Jakie? http://php.net/preg_match i poczytaj o wyrażeniach regularnych
-------------------- |
|
|
-MietekJurek- |
![]() ![]()
Post
#3
|
Goście ![]() |
Hmm co mają wyrażenie regularne do tego ?
![]() ![]() strtolower zmienia nazwę na małe litery, ale co z tego jak plik sie nie dodaje na ftp. :/ oto mój kod:
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Włącz error_reporting(E_ALL); i powiedz jaki błąd ci wypluwa.
-------------------- |
|
|
-MietekJurek- |
![]() ![]()
Post
#5
|
Goście ![]() |
Jedyny warning ktory mi sie pojawia to:
Ale to raczej nie oto chodzi. Może być tak, że serwer nie obsługuje rozszerzeń pisanych wielkimi literami ? |
|
|
-MietekJurek- |
![]() ![]()
Post
#6
|
Goście ![]() |
To może tak...
![]() Czy komuś w ogóle uploaduje się plik z rozszerzeniem pisanym wielkimi literami ? ![]() Może jakiś, banalny przykładzik ? ![]() |
|
|
![]()
Post
#7
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat $plik_tmp = strtolower($_FILES['plik']['tmp_name']); Kopiesz pod sobą dołek. ;] Nie uploaduje pliku z nazwą z wielkich liter, bo nakazujesz PHP szukanie po małych. ![]() -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 726 Pomógł: 129 Dołączył: 10.01.2008 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Wielkość liter w rozszerzeniu nie m znaczenia, ba nawet same rozszerzenie nie ma znaczenia. $_FILES['plik']['type'] ta zmienna przybiera wartośc typu mime np. image/png, image/jpeg, text/plain itd. Sprawdzaj w ten sposób.
-------------------- Pomogłem? Kliknij przycisk Pomógł pod pomocnym Ci postem.
http://maxik.me/ |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 493 Pomógł: 32 Dołączył: 14.04.2008 Skąd: Lenkowski.net Ostrzeżenie: (0%) ![]() ![]() |
hehehe, nie masz racji. Ja tak zrobiłem i na drugi dzień miałem hakera. Mimo że rozszerzenie jest prostym zabezpieczeniem to mimo wszystko dobrym. sam typ mime nie starczy bo każdemu plikowi możesz to zmienić
![]() np. haxoremjesteminicmitwojezabezpieczenieniezrobi.php -> mimetype image/gif ^^ Ten post edytował MWL 10.09.2008, 14:18:50 -------------------- Wpadaj na mój kanał o PHP. Dużo mięsa 🥩!
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 726 Pomógł: 129 Dołączył: 10.01.2008 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Dlatego też często wykorzystuje się prostą metodę sprawdzania wielkości zuploadowanego obrazka, jeśli większy niż 1x1 to przechodzi, jeśli nie to błąd. Sumując wszystkie te zabezpieczenia może wyjść skrypt którego nie będzie opłacało się hakerowi złamać bo po prostu za dużo z tym roboty.
-------------------- Pomogłem? Kliknij przycisk Pomógł pod pomocnym Ci postem.
http://maxik.me/ |
|
|
-MietekJurek- |
![]()
Post
#11
|
Goście ![]() |
Kopiesz pod sobą dołek. ;] Nie uploaduje pliku z nazwą z wielkich liter, bo nakazujesz PHP szukanie po małych. ![]() Ehhh... chodzi mi o roszerzenie, a nie o nazwe. JPG (wielkie litery). Dalem strtolower zeby zmienilo roszerzenie na male litery, ale mimo to nie uploaduje pliku. Z plikami, które maja rozszerzenie pisanymi małymi literami nie ma problemu. dodalem co takiego:
uploaduje plik np: DSCN6546.JPG i nie przechodzi validacji. Z plikiem DSCN6546.jpg nie ma problemu. |
|
|
![]()
Post
#12
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat Wielkość liter w rozszerzeniu nie m znaczenia, ba nawet same rozszerzenie nie ma znaczenia. Nie rozumiesz. Poza tym, tmp_name nie trzyma rozszerzenia. ^^ move_uploaded_file" title="Zobacz w manualu PHP" target="_manual NIE ZADZIAŁA jeśli wielkość liter jest inna niż zapisany plik. Z małymi literami nie ma problemu - serwer przenosi z /tmp/uploads/temp_name do lokalizacji docelowej, ale już /tmp/uploads/TEMP_NAME nie, ponieważ plik temp_name (którego serwer szuka po użyciu strtolower" title="Zobacz w manualu PHP" target="_manual na zmiennej zawierającą lokalizację pliku źródłowego) w rzeczywistości nie istnieje. Ten post edytował erix 10.09.2008, 16:06:32 -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
-MietekJurek- |
![]()
Post
#13
|
Goście ![]() |
Usunąłem strtolower i niestety nadal nie działa
![]() |
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 493 Pomógł: 32 Dołączył: 14.04.2008 Skąd: Lenkowski.net Ostrzeżenie: (0%) ![]() ![]() |
są i uparci
![]() -------------------- Wpadaj na mój kanał o PHP. Dużo mięsa 🥩!
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 14:14 |