Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Upload pliku a jego typ
Forum PHP.pl > Forum > PHP
Lethys
Mam skrypt wgrywania avatarow. Problem się pojawia ze sprawdzeniem formatu pliku.

Mój kod:

  1. <?php
  2.  
  3. print "<br>Wybierz plik który chcesz używać jako avatar (maks. 30Kb)";
  4. print "<form action='avatars.php' method='POST' enctype='multipart/form-data'>
  5. <br>Plik:<br><input type='file' name='plik'><br><br><input type='submit' name='submit' value='Wgraj'>
  6. </form>";
  7.  
  8.  
  9.  
  10. $_POST['plik'];
  11. $file_size = $_FILES['plik']['size'];
  12. $file_name = $_FILES['plik']['name'];
  13. $file_type = $_FILES['plik']['type'];
  14. $sp = explode("/",$file_type);
  15.  
  16. if($file_size > 40000){
  17. echo "Plik ma zbyt duży rozmiar - maksymalny rozmiar to 40KB, twój plik ma $file_size bitów";
  18. }
  19. if($file_type != "image/gif" or $file_type != "image/jpg"){
  20. echo "Plik ma zły format. Dopuszczalny jest jpg oraz gif. Twój plik ma format $file_type";
  21. }else{
  22. $tmp_name = $_FILES["plik"]["tmp_name"];
  23. $name1 = $_FILES["plik"]["name"];
  24. move_uploaded_file($tmp_name, "avatars/$name1");
  25. print "Avatar o danych ($file_size bitów, format $file_type) został poprawie wgrany.";
  26. }
  27.  
  28.  
  29. ?>


Niby wszystko jest ok, ale za kazdym razme pokazuje mi info ze format pliku jest zly mimo iz wiadomosc
Cytat
Twój plik ma format $file_type
zwraca np. image/gif
wookieb
  1. if($file_type != "image/gif" or $file_type != "image/jpg"){

Nie OR tylko AND.
A dlaczego? Logika...
1 OR 0 = 1 // jest blad
0 OR 1 = 1 // jest blad
1 OR 1 = 1 // jest blad
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.