Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][PHP]Zmiana nazwy i weryfikacja rozszerzenia uploadowanego pliku
Forum PHP.pl > Forum > Przedszkole
ebate
Chciałbym, aby uploadowany plik na serwer zmieniał nazwę na id użytkownika i aby była weryfikacja rozszerzenia(poza plikami z rozszerzeniem .jpg .png .gif nie można wysłac żadnych plików). Czyli wysłany plik przez użytkownika o id=23 zmienił nazwę na np. 23.jpg

Części skryptu związane z uploadem:

  1. $name = 'pliki/'.$_FILES['pliczek']['name'];
  2.  
  3. (...)
  4.  
  5. move_uploaded_file($_FILES['pliczek']['tmp_name'],"pliki/".$_FILES['pliczek']['name']);


  1. <form action="register.php" method="post" enctype="multipart/form-data">
  2.  
  3. <input type="hidden" name="MAX_FILE_SIZE" value="30000" />
  4.  
  5. <strong>Wybierz swoje zdjęcie:</strong><br>
  6.  
  7. <input type="file" name="pliczek" size="40" /><br>
  8.  
  9. <b>Oświadczam iż zaakceptowałem regulamin</b>
  10.  
  11. <input type="checkbox" id="reg" onclick="regulamin()" /><br />
  12.  
  13. <input type="submit" name="submit" value="Rejestracja" id="dalej" disabled="disabled" style="font-size: 10pt; font-family: Tahoma; font-weight: bold" />
  14.  
  15. </form>


Z góry dziękuje za pomoc
Sephirus
  1. move_uploaded_file($_FILES['pliczek']['tmp_name'],"pliki/".$_FILES['pliczek']['name']);


tutaj zamiast .$_FILES['pliczek']['name'] daj $filename:

  1. $fileData = pathinfo($_FILES['pliczek']['name']);
  2.  
  3. // pod $fileData['extension'] masz rozszerzenie pliku - możesz to wykorzystać
  4. // do sprawdzenia czy plik ma takie rozszerzenie jak mieć powinien
  5. // i jesli nie uzyć unlink($_FILES['pliczek']['tmp_name']); i zwrócić błąd ;)
  6.  
  7. $filename = $id_uzytkownika.'.'.$fileData('extension');
  8.  
  9.  
  10. move_uploaded_file($_FILES['pliczek']['tmp_name'],"pliki/".$filename);


HTH! wink.gif
cuterOne
  1. $ext = array('png', 'jpg');
  2. if(in_array(end(explode($$_FILES['pliczek']['tmp_name'])), $ext) {
  3.  
  4. //oki
  5. }
Korab
Zamiast sprawdzać po rozszerzeniu, lepiej sprawdź MimeType:
http://www.php.net/manual/pl/function.finfo-file.php
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.