Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]sprawdzanie rozmiaru (w pikselach) obrazka od uzytkownika
Forum PHP.pl > Forum > Przedszkole
hyhyhy
Witam,
Mam taki problem: potrzebuje skontrolowac rozmiar w pikselach (w zasadzie tylko maksymalny) obrazka od uzytkownika. Czy ktos wie jak sie za to zabrac, bo nie mam pojecia? Powiedzmy chce, zeby skrypt przepuszczal tylko 100 x 100 px a nie wieksze.
kefirek
getimagesize
hyhyhy
Czy mógłby mi ktoś doradzić, co robię nie tak? poniższy skrypt zawiesza się po uruchomieniu (problem pojawił się po dorzuceniu instrukcji spr wielkosc obrazka) ponizej wrzucam caly kod dodawania, bład, który powoduje przyrównałbym do sytuacji, gdy kiedyś przez nieuwagę zawarłem w skrypcie niekończącą się pętlę - i too many conenctions to database przez kilka następnych minut

komentarzem opatrzyłem instrukcje stwarzające problemy - tak to kod działa, ale jest dziurawy i nieużyteczny...

  1.  
  2. function sprawdz_bledy()
  3. {
  4. if ($_FILES['obrazek']['error'] > 0)
  5. {
  6. echo 'problem: ';
  7. switch ($_FILES['obrazek']['error'])
  8. {
  9. // jest wi묳zy niߠdomyݬny maksymalny rozmiar,
  10. // podany w pliku konfiguracyjnym
  11. case 1: {echo 'Rozmiar pliku jest zbyt du࠹.'; break;}
  12.  
  13. // jest wi묳zy niߠwartoݦ pola formularza
  14. // MAX_FILE_SIZE
  15. case 2: {echo 'Rozmiar pliku jest zbyt du࠹.'; break;}
  16.  
  17. // plik nie zostaӠwysԡny w caԯݣi
  18. case 3: {echo 'Plik wysԡny tylko czꝣiowo.'; break;}
  19.  
  20. // plik nie zostaӠwysԡny
  21. case 4: {echo 'Nie wysԡno ࠡdnego pliku.'; break;}
  22.  
  23. // pozostaԥ bԪdy
  24. default: {echo 'WystڰiӠbӹd podczas wysyԡnia.';
  25. break;}
  26. }
  27. return false;
  28. }
  29. return true;
  30. }
  31.  
  32. function sprawdz_typ()
  33. {
  34. if ($_FILES['obrazek']['type'] != 'image/jpeg')
  35. return false;
  36. return true;
  37. }
  38.  
  39. /* function sprawdz_wielkosc()
  40. {
  41. $img = $_FILES['obrazek']['tmp_name'];
  42. $info = getimagesize($img);
  43. if (($info[0] > 200) or ($info[1] > 200))
  44. { echo 'Obrazek jest za duzy!'; return false; }
  45. else {return true;}
  46. } */
  47.  
  48. function zapisz_plik($nazwa_obrazka)
  49. {
  50.  
  51. $lokalizacja = './graphics/'.$nazwa_obrazka.'.jpg';
  52.  
  53. if(is_uploaded_file($_FILES['obrazek']['tmp_name']))
  54. {
  55. if(!move_uploaded_file($_FILES['obrazek']['tmp_name'], $lokalizacja))
  56. {
  57. echo 'problem: Nie udało sie skopiowac pliku do katalogu.';
  58. return false;
  59. }
  60. }
  61. else
  62. {
  63. echo 'Plik nie zostaӠzapisany.';
  64. return false;
  65. }
  66. return true;
  67. }
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74. /* if (sprawdz_bledy == true)
  75. {
  76. if (sprawdz_typ == true)
  77. {
  78. if (sprawdz_wielkosc == true)
  79. {
  80. $element = rand();
  81. $nazwa_obrazka = $element;
  82. zapisz_plik($nazwa_obrazka);
  83. }
  84.  
  85. }
  86. } */
  87.  
  88. $element = rand();
  89. $nazwa_obrazka = $element;
  90. zapisz_plik($nazwa_obrazka);
  91.  
  92. // tutaj dodanie do bazy itd
  93.  
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.