Praca w domu - Dodatkowa Praca - Zarabianie przez Internet
PHP - Mały problem - Wersja do druku

+- Praca w domu - Dodatkowa Praca - Zarabianie przez Internet (https://zarabiam.com)
+-- Dział: Off-Topic (https://zarabiam.com/Forum-Off-Topic-9)
+--- Dział: Dział Tematyczny (https://zarabiam.com/Forum-Dzial-Tematyczny-116)
+---- Dział: Informatyka (https://zarabiam.com/Forum-Informatyka-121)
+---- Wątek: PHP - Mały problem (/Temat-PHP-Maly-problem-42715)



PHP - Mały problem - mrxardas - 07-09-2011

Witam mam taki problem bo chcę dodać blokade wysyłania plików z rozszeżeniem php na mój serwer ale nie potrafię tego zrobić.
Pomoże mi ktoś? tu jest kod:

<?php

$max_rozmiar = 1024*1024 * 50;
if (is_uploaded_file($_FILES['plik']['tmp_name'])) {
if ($_FILES['plik']['size'] > $max_rozmiar ) {
echo 'Błąd! Plik jest za duży!';
} else {
echo 'Odebrano plik. Początkowa nazwa: '.$_FILES['plik']['name'];
echo '<br/>';
if (isset($_FILES['plik']['type'])) {
echo 'Typ: '.$_FILES['plik']['type'].'<br/>';
}
move_uploaded_file($_FILES['plik']['tmp_name'],
$_SERVER['DOCUMENT_ROOT'].'/files/'.$_FILES['plik']['name']);
}
} else {
echo 'Błąd przy przesyłaniu danych!';
}

?>


RE: PHP - Mały problem - sl0910 - 08-09-2011

Dodaj warunek if w którym będziesz sprawdzał czy 3 ostatnie litery to nie jest 'php'.

//edit
Może coś takiego zadziała:
Kod:
<?php $max_rozmiar = 1024*1024 * 50; if (is_uploaded_file($_FILES['plik']['tmp_name'])) { if ($_FILES['plik']['size'] > $max_rozmiar ) { echo 'Błąd! Plik jest za duży!'; } else if(!strcmp(substr($_FILES['plik']['name'], -3, 0),"php")) { echo 'Błąd! Nie można przysyłać plików php!'; } else { echo 'Odebrano plik. Początkowa nazwa: '.$_FILES['plik']['name']; echo '<br/>'; if (isset($_FILES['plik']['type'])) { echo 'Typ: '.$_FILES['plik']['type'].'<br/>'; } move_uploaded_file($_FILES['plik']['tmp_name'], $_SERVER['DOCUMENT_ROOT'].'/files/'.$_FILES['plik']['name']); } } else { echo 'Błąd przy przesyłaniu danych!'; } ?>
substr($_FILES['plik']['name'], -3, 0) - "wyciągnięcie" 3 ostatnich znaków z nazwy pliku
strcmp - porównywanie ciągów


RE: PHP - Mały problem - mrxardas - 08-09-2011

Thx pomogłeś


RE: PHP - Mały problem - siampa - 10-09-2011

A co jezeli plik ma rozszerzenie .php5? najlepiej przez explode() rozbic cala nazwe na czesci i sprawdzic czy w ostatnim czlonie nie ma *php*.