Skocz do zawartości
tom_tom

Php I Upload Plików

Rekomendowane odpowiedzi

Dzień dobry...

 

Kupiłem sobie książke "PHP i MySQL dla każdego" autorstwa Pana Marcina Lisa z wydawnictwa Helion. Przypadkowo natrafiłem tam na skrypt do uploadowania plików na serwer. Jest to prosty skrypt. Jego zawartość przedstawiam poniżej:

 

Zawartość pliku formularz.html:

 

php:

<html> <head> <title>Wysyłanie pliku </head> <body> <center> <form name	= "formularz1" 	  enctype = "multipart/form-data" 	  action  = "http://127.0.0.1/skrypt.php" 	  method  = "POST"> Nazwa pliku: <input type  = "file" 	   name  = "plik1" 	   size  = "30" 	   value = ""> <input type  = "submit"  	   name  = "wyslij"  	   value = "Wyślij plik"> </form> </center> </body> </html>

 

Zawartość pliku skrypt.php to:

php:

<html> <head> <title>Upload pliku </head> <body> <?php $uploaddir = './images/news/';  if($_FILES['plik1']['error'] == UPLOAD_ERR_OK){   $new_name = $uploaddir.$_FILES['plik1']['name'];   $temp_name = $_FILES['plik1']['tmp_name'];   if([url="http://pl.php.net/move_uploaded_file"]move_uploaded_file[/url]($temp_name, $new_name)){ 	echo "Plik został załadowany.\n";   }   else{ 	echo "Nieprawidłowy plik\n";   } } else{   echo("Wystąpił błąd: ");   switch($_FILES['plik1']['error']){ 	case UPLOAD_ERR_INI_SIZE  : 	case UPLOAD_ERR_FORM_SIZE : 	  echo("Przekroczony maksymalny rozmiar pliku!\n"); 	  break; 	case UPLOAD_ERR_PARTIAL : 	  echo("Odebrano tylko część pliku!\n"); 	  break; 	case UPLOAD_ERR_NO_FILE : 	  echo("Plik nie został pobrany!\n"); 	  break; 	default : 	  echo("Nieznany typ błędu!\n");   } } ?> </body> </html>

 

Mam mały problem z tym newsam. Polega on na tym, że można nadpisywać pliki... czyli jeśli na serwerze jest już plik fotka.jpg a ja wyślę na serwer plik fotka.pl ale o innej zawartości to plik się nadpiszę... Jak zrobić aby pliku nie dało się nadpisac?

 

Z góry dziękuje za udzieloną pomoc i co za tym idzie poświęcony dla mnie czas :)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

widzę że o programowaniu niewiele wiesz :)

 

gdybyś co nieco już widział, to powinno być dla Ciebie oczywistym, aby sprawdzić w tym celu czy w katalogu istnieje już taki plik.

Dalej swe kroki powinieneś skierować do manuala PHP, który pokazał sgj i tam szukać funkcji spośród innych zajmujących się obsługą systemu plików.

Znając choć trochę angielski szybko odnalazł byś funkcję file_exists i miał tą satysfakcję, iż sam doszedłeś do czegoś... :)

 

To oczywiście taka metodologia na przyszłość... ja się nie uczyłem PHP a napisałem już sklep netowy i swoją stronkę bazując na znajomości innych języków i jakiejśtam niezerowej inteligencji.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...