To jest tylko wersja do druku, aby zobaczyć pełną wersję tematu, kliknij TUTAJ
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

HTML/PHP/AJAX/JS - Upload grafiki w phpbb

kevin_ - 09-02-2009, 19:15
Temat postu: Upload grafiki w phpbb
Chciałbym stworzyć skrypt wrzucający grafikę użytkownika do folderu /images/graficzka/ - chodzi mi tutaj o kawałek kodu, który pomoże mi osiągnąć ten cel. Tworzę nową stronę zintegrowaną z phpbb i użytkownik będzie miał możliwości uploadu grafiki (gif, jpg, png) po wrzuceniu grafiki na serwer skrypt podaje link do wyświetlenia obrazku.
Bucu - 09-02-2009, 20:09

upload.html
Kod:

<form enctype="multipart/form-data" action="wyslij.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="50000" />
<input name="plik" type="file" />
<input type="submit" value="Wyślij plik" />
</form>


upload.php:
Kod:
<?php
$check = explode(".",$plik_nazwa);
$count_sp = count($check) - 1;

if($check[$count_check] == "gif" or $check[$count_check] == "jpg" or $check[$count_check] == "png") {
echo "Plik poprawny";

$plik_tmp = $_FILES['plik']['tmp_name'];
$plik_nazwa = $_FILES['plik']['name'];
$plik_rozmiar = $_FILES['plik']['size'];

$plik_nazwa = strtolower($plik_nazwa);
$plik_nazwa = str_replace("ż","z",$plik_nazwa);
$plik_nazwa = str_replace("ą","a",$plik_nazwa);
$plik_nazwa = str_replace(" ","",$plik_nazwa);
$plik_nazwa = str_replace("_","",$plik_nazwa);

if(is_uploaded_file($plik_tmp)) {
     move_uploaded_file($plik_tmp, "/images/graficzka/$plik_nazwa");
    echo "Plik: <strong>$plik_nazwa</strong> o rozmiarze
    <strong>$plik_rozmiar bajtów</strong> został przesłany na serwer!";
}
}
else {
echo "Plik niepoprawny";
}

?>

tworzysz folder /images/graficzka CHMOD 777

ten parametr odpowiada za rozmiar pliku (50kb):
Kod:
<input type="hidden" name="MAX_FILE_SIZE" value="50000" />


Sprawdza rozmiar, zamienia polskie znaki, sprawdza typ pliku.


Zródło:
http://www.kess.snug.pl/i...p?sid=10&pid=38

mcfly - 09-02-2009, 20:17

Cytat:
ten parametr odpowiada za rozmiar pliku (50kb):
Kod:
<input type="hidden" name="MAX_FILE_SIZE" value="50000" />


hehe najgłupsze co można zrobić :)

lepiej po:
Kod:
$plik_tmp = $_FILES['plik']['tmp_name'];
$plik_nazwa = $_FILES['plik']['name'];
$plik_rozmiar = $_FILES['plik']['size'];

dodać:
Kod:
if ($plik_rozmiar > 50000) {
echo 'za duzy rozmiar';
exit;
}


to:
Kod:
$check = explode(".",$plik_nazwa);
$count_sp = count($check) - 1;

if($check[$count_check] == "gif" or $check[$count_check] == "jpg" or $check[$count_check] == "png") {
echo "Plik poprawny";


powinno byc po:
Kod:
$plik_tmp = $_FILES['plik']['tmp_name'];
$plik_nazwa = $_FILES['plik']['name'];
$plik_rozmiar = $_FILES['plik']['size'];

bo przecież wcześniej nie ma zmiennej $plik_nazwa :)



Powered by phpBB modified by Przemo © 2003 phpBB Group