Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Upload Avatarów
Forum PHP.pl > Forum > Przedszkole
Matimor
Witajcie winksmiley.jpg
Mam problem, wygrzebałem w internecie upload obazków na serwer, lecz nie działa on. Ma on mieć dostępny format tylko .jgp i max wymiary to 200x200, oto kod:
  1. //Formularz
  2. <input type="hidden" name="MAX_FILE_SIZE" value='.$settings['MaxSize'].' />
  3. <input class="textinput" name="Avatar" type="file" size=16/></small>
  4. //Skrypt
  5. list($width, $height) = getimagesize($_FILES['Avatar']['tmp_name']);
  6. if(($_FILES['Avatar']['type'] == 'image/pjpeg' || $_FILES['Avatar']['type'] == 'image/jpg' || $_FILES['Avatar']['type'] == 'image/jpeg') && $width < 200 && $height < 200)
  7. {
  8. move_uploaded_file($_FILES['Avatar']['tmp_name'], 'css/avatars' . $_FILES['Avatar']['name']) or die('Error moving image...');
  9. } else { die('Invalid image type or size...'); }
  10.  


Może mi ktoś powiedzieć co w tym kodzie jest nie tak? Z góry dzięki smile.gif
Spawnm
może brak enctype="multipart/form-data" w form

daj echo $width, $height .
Matimor
No nic nie wyświetla winksmiley.jpg
Co do enctype="multipart/form-data" to to mam tylko tu nie pokazałem smile.gif
piotrooo89
więc tak daj print_r($_FILES) i powiedz czy nie masz jakiś błędów.
Matimor
Kod
Array ( [Avatar] => Array ( [name] => avatar_3.jpeg [type] => [tmp_name] => [error] => 2 [size] => 0 ) )
piotrooo89
teraz cyk cyk cyk udajemy się do manuala i czytamy co oznacza błąd nr 2. http://pl.php.net/manual/pl/features.file-upload.errors.php
Matimor
Dziwne plik ma 11kb a ustawione mam na 400 o_O
Blame
Jesteś pewny? Zobacz sobie co ci wyświetla $settings['MaxSize'] .
Matimor
Wyświetla 400, więc o co chodzi
piotrooo89
a co masz tu: value='.$settings['MaxSize'].' ? bo może jakaś dziwną wartość. ustaw jakaś na sztywno np 30000 i protestuj.
Matimor
Bez zmian haha.gif

Tak mam w configu
  1. $settings['MaxSize'] = 200;
piotrooo89
wpisz 30000 i powiedz czy dostajesz jakiś error... bo to jest dość ważne.
Matimor
Teraz git, ale mam Error Uploading Image ;D Co oznacza, że nie może przesłać obrazka, chociaż z niewiadomych mi powodów
piotrooo89
spróbuj wrzucić jakiś malutki pliczek, tylko żeby był lekki i mała rozdzielczość.
Matimor
No właśnie wrzucam 20x20 1kb i jest ten błąd
piotrooo89
jaki błąd? numer błędu podaj!
Matimor
Kod
Array ( [Avatar] => Array ( [name] => avatar_3.jpg [type] => [tmp_name] => [error] => 2 [size] => 0 ) )


Dobra wiem o co biega, ja myślałem, że to w KB się podaje, a tu bajty.

400kb = 409600b biggrin.gif

Dzięki za pomoc, oczywiście pomógł smile.gif

Jeszcze jedno, jak sprawdzić czy plik już istnieje i nadać mu zakodowaną nazwę? Chodzi o samo kodowanie tak aby się nie powtarzało, uniq
piotrooo89
file_exists i np uzywaj rand lub mt_rand
Blame
Cytat(piotrooo89 @ 10.11.2009, 21:11:58 ) *
file_exists i np uzywaj rand lub mt_rand

No ale wtedy jest "podobieństwo" że się powtórzy. Polecam jako nazwy użyć funkcji time.
piotrooo89
małe prawdopodobieństwo ale Twój sposób wydaje się równie ciekawy.
Matimor
oo Blame ty to masz mózg biggrin.gif Pomógł smile.gif
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.