Autor | Zpráva | ||
---|---|---|---|
Looser Profil * |
#1 · Zasláno: 25. 4. 2012, 17:10:45
Zdravim, mam docela vaznej problem, na svem webu v administraci mam moznost nahravani obrazku na web, vše fungovalo naprosto bez problémů ale pak najednou z ničeho nic (neprobehli zadne upravy ve zdrojovejch souborech) mi vždy při pokusu o nahrání obrázku vyskočí nekolik chybovejch hlášení a obrazek se samozřejme vubec nenahraje, zkusil sem cely web stahnout a spustit na svem počítači a vše šlo bez problému, proto by mě zajímalo jestli s tim nema nekdo zkusenost a nevi jak to opravit. Hosting mam na Savana.cz Napadlo me ze je to v nastaveni hostingu ale zadny nastaveni sem v dobe vzniku teto chyby nedelal.
Chybové hlášení při pokusu o nahrání obrázku: Warning: copy() [function.copy]: Unable to access in /mnt/data/accounts/t/totallooser/data/www/krby2/admin/index.php on line 111 Warning: rename(./,../galerie/orig/153.) [function.rename]: Device or resource busy in /mnt/data/accounts/t/totallooser/data/www/krby2/admin/index.php on line 112 Warning: getimagesize() [function.getimagesize]: Unable to access ../galerie/orig/153. in /mnt/data/accounts/t/totallooser/data/www/krby2/admin/index.php on line 114 Warning: getimagesize(../galerie/orig/153.) [function.getimagesize]: failed to open stream: No such file or directory in /mnt/data/accounts/t/totallooser/data/www/krby2/admin/index.php on line 114 Warning: imagecreatetruecolor() [function.imagecreatetruecolor]: Invalid image dimensions in /mnt/data/accounts/t/totallooser/data/www/krby2/admin/index.php on line 137 Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /mnt/data/accounts/t/totallooser/data/www/krby2/admin/index.php on line 138 Warning: imagecreatetruecolor() [function.imagecreatetruecolor]: Invalid image dimensions in /mnt/data/accounts/t/totallooser/data/www/krby2/admin/index.php on line 140 Warning: imagecopyresized(): supplied argument is not a valid Image resource in /mnt/data/accounts/t/totallooser/data/www/krby2/admin/index.php on line 141 Warning: imagecopyresized(): supplied argument is not a valid Image resource in /mnt/data/accounts/t/totallooser/data/www/krby2/admin/index.php on line 142 Script pro nahravani: if ($_GET["sekce"] === "galerie" AND $_GET["act"] === "pridat"){ echo "er:" .$file_type; $dir = "../galerie"; // definování výslednéhoadresáře if(!file_exists($dir)){ // když neexistuje složka kategorie galerie mkdir ($dir); chmod ($dir, 0777); } if (!is_writable ($dir)){chmod ($dir, 0777);} // když není složka kategorie určena pro zápis if (!is_writable ("./")){chmod ("./", 0777);} // když není složka admin určena pro zápis if($file_type == 'image/gif'){$typ_souboru = 'gif';} elseif(($file_type == 'image/jpeg') or ($file_type == 'image/pjpeg')){$typ_souboru = 'jpg';} elseif($file_type == 'image/png'){$typ_souboru = 'png';} $screens = mysql_query("SELECT MAX(id) FROM _galerie"); $screenu = mysql_fetch_row($screens); $cislo_screenu = ($screenu[0]+1); // podle db zjistím číslo screenu $obr = $dir."/orig/".$cislo_screenu.".".$typ_souboru; // název a umístění nového obrázku $nahled = $dir."/".$cislo_screenu."-sml.".$typ_souboru; // název a umístění náhledu obrázku $vdz = "../images/vodoznak.png"; if (file_exists($file_name.$file_type)){print "obrázek již s daným názvem existuje!";} else{ copy($file, "./".$file_name); // překopíruji obrázek z přechodného adresáře do složky admin rename("./".$file_name, $obr); // zkopíruji obrázek ze složky admin do cílové složky pod novým názvem $size = GetImageSize($obr); $sizevdz = GetImageSize($vdz); $width = $size[0]; // šířka uploadovaného obrázku $heigh = $size[1]; // výška uploadovaného obrázku if ($width > $heigh){ $ratio = $heigh/$width; $velx = 170; // šířka náhledu obrázku $vely = round(170*$ratio); // výška náhledu obrázku } elseif ($width < $heigh){ $ratio = $width/$heigh; $velx = round(150*$ratio); // šířka náhledu obrázku $vely = 150; // výška náhledu obrázku } $dst_x = $size[0] - $sizevdz[0]; //vypočítá souřadnice umístění vodoznaku (x) $dst_y = $size[1] - $sizevdz[1]; //vypočítá souřadnice umístění vodoznaku (y) if ($typ_souboru == "jpg"){$img_in = imagecreatefromjpeg($obr);} // načtu velký obrázek elseif($typ_souboru == "gif"){$img_in = imagecreatefromgif($obr);} // načtu velký obrázek elseif($typ_souboru == "png"){$img_in = imagecreatefrompng($obr);} // načtu velký obrázek $img_vdz = imagecreatefrompng($vdz); //načte vodoznak $img = ImageCreateTrueColor($velx,$vely); // vytvořím TrueColor obrázek s rozměry náhledu imagecopyresampled($img,$img_in,0,0,0,0,$velx,$vely,$width,$heigh); // nakopíruju originál do náhledového formátu $imgv = imagecreatetruecolor($size[0],$size[1]); // vytvořím TrueColor obrázek s původním rozměry imagecopyresized($imgv,$img_in,0,0,0,0,$size[0],$size[1],$size[0],$size[1]); imagecopyresized($imgv,$img_vdz,$dst_x,$dst_y,0,0,$sizevdz[0],$sizevdz[1],$sizevdz[0],$sizevdz[1]); if($typ_souboru == "jpg"){imagejpeg($img,$nahled,75);} //uložím obrázek elseif($typ_souboru == "gif"){imagegif($img,$nahled);} //uložím obrázek elseif($typ_souboru == "png"){imagepng($img,$nahled);} //uložím obrázek $obr_vdz = $dir."/".$cislo_screenu.".".$typ_souboru; if($typ_souboru == "jpg"){imagejpeg($imgv,$obr_vdz,75);} //uložím obrázek elseif($typ_souboru == "gif"){imagegif($imgv,$obr_vdz);} //uložím obrázek elseif($typ_souboru == "png"){imagepng($imgv,$obr_vdz);} //uložím obrázek } } |
||
Someone Profil |
#2 · Zasláno: 25. 4. 2012, 18:08:06
Zkus nastavit složkám CHMOD 777
|
||
Looser Profil * |
#3 · Zasláno: 25. 4. 2012, 18:42:15
chmod 777 je nastavenej
|
||
peta Profil |
#4 · Zasláno: 26. 4. 2012, 08:23:57
1. Zjisti odkud kam funkci copy presunujes obrazky
2. Zjisti, jaka prava tam mas nastavena. Na hostingu radi meni prava bez upozorneni. 3. Zjisti, kolik volneho mista jeste muzes pouzit pro nahravani. Na hostingu jsou limity volneho mista. Mozna ti neco z toho vypise tento kod http://peter-mlich.wz.cz/web/php/pr/upload/upl_manager.txt |
||
Davex Profil |
#5 · Zasláno: 26. 4. 2012, 18:26:47
Looser:
Kde se berou a co obsahují proměnné $file_type a $file_name ?
|
||
Šéva Profil |
#6 · Zasláno: 27. 4. 2012, 12:35:28
Podle mě to bude jen o právech na dané složky... v těch warningách je 2x napsáno "Unable to access" a to na řádcích 111 a 114, tak se mrkni, kam to směřuje na jaké složky a nastav tam znovu práva na 777
|
||
Časová prodleva: 12 let
|
0