Autor | Zpráva | ||
---|---|---|---|
mersi Profil |
#1 · Zasláno: 19. 6. 2009, 12:49:59
Mám takýto problém. Načítavam obrázky z formulára a následne každý z nich chcem uploadovat do dvoch folderov s tym ze v kazdom ich upravujem na určité rozmery.
Problém je v tom ze vzdy mi to funguje iba pre jeden folder. napr. ked uploadnem obrazok a upravim do prveho adresara tak do druheho mi to uz nespravi. A opačne. Cim to je. Tu je ten kod. Nemozem 2x uploadovat jeden $_FILES['userfile'.$i]['name'] ? Ako to mam zmenit. Prosim poradte if ( $_FILES['userfile'.$i]['name'] != '' ){ $uploadfile = $uploaddir_view . basename($_FILES['userfile'.$i]['name']); $uploadfile1 = $uploaddir_big . basename($_FILES['userfile'.$i]['name']); if (( move_uploaded_file( $_FILES['userfile'.$i]['tmp_name'], $uploadfile )) && ( move_uploaded_file( $_FILES['userfile'.$i]['tmp_name'], $uploadfile1 )) ) { list( $sirka, $vyska, $typ, $atributy ) = getimagesize( $uploadfile ); list( $sirka1, $vyska1, $typ1, $atributy1 ) = getimagesize( $uploadfile1 ); $pomer = $sirka / $vyska; $pomer1 = $sirka1 / $vyska1; $nova_vyska = $view_size / $pomer; $nova_vyska1 = $big_size / $pomer1; if ( $vyska > $view_size ){ ini_set('memory_limit', '100M'); switch ( $typ ) { case 2: // JPEG { $image_new = imagecreatetruecolor( $view_size, $nova_vyska ); $image = imagecreatefromjpeg( $uploadfile ); imagecopyresampled( $image_new, $image, 0, 0, 0, 0, $view_size, $nova_vyska, $sirka, $vyska ); imagejpeg( $image_new, $uploadfile ); } break; case 1: // GIF { $image_new = imagecreatetruecolor( $view_size, $nova_vyska ); $image = imagecreatefromgif( $uploadfile ); imagecopyresampled( $image_new, $image, 0, 0, 0, 0, $view_size, $nova_vyska, $sirka, $vyska ); imagegif( $image_new, $uploadfile ); } break; case 3: // PNG { $image_new = imagecreatetruecolor( $view_size, $nova_vyska ); $image = imagecreatefrompng( $uploadfile ); imagecopyresampled( $image_new, $image, 0, 0, 0, 0, $view_size, $nova_vyska, $sirka, $vyska ); imagepng( $image_new, $uploadfile ); } break; } } if ( $vyska1 > $big_size ){ ini_set('memory_limit', '100M'); switch ( $typ1 ) { case 2: // JPEG { $image_new = imagecreatetruecolor( $big_size, $nova_vyska1 ); $image = imagecreatefromjpeg( $uploadfile1 ); imagecopyresampled( $image_new, $image, 0, 0, 0, 0, $big_size, $nova_vyska1, $sirka1, $vyska1 ); imagejpeg( $image_new, $uploadfile1 ); } break; case 1: // GIF { $image_new = imagecreatetruecolor( $big_size, $nova_vyska1 ); $image = imagecreatefromgif( $uploadfile1 ); imagecopyresampled( $image_new, $image, 0, 0, 0, 0, $big_size, $nova_vyska1, $sirka1, $vyska1 ); imagegif( $image_new, $uploadfile1 ); } break; case 3: // PNG { $image_new = imagecreatetruecolor( $big_size, $nova_vyska1 ); $image = imagecreatefrompng( $uploadfile1 ); imagecopyresampled( $image_new, $image, 0, 0, 0, 0, $big_size, $nova_vyska1, $sirka1, $vyska1 ); imagepng( $image_new, $uploadfile1 ); } break; } } } else header( 'Location: pridat_ubyt_zar3.php?up_err' ); |
||
Alphard Profil |
#2 · Zasláno: 19. 6. 2009, 13:42:01
Funkce move_uploaded_file() přesune požadovaný soubor (poté již není k dispozici na dané adrese). Její první použití nahraďte první copy().
|
||
fajzen Profil |
#3 · Zasláno: 19. 6. 2009, 13:46:03 · Upravil/a: fajzen
mám taký pocit, že
move_uploaded_file() move_uploaded_file() copy() unlink() // neskoro :( |
||
mersi Profil |
#4 · Zasláno: 19. 6. 2009, 13:48:34
dakujem uz to ide
|
||
Časová prodleva: 15 let
|
0