Autor | Zpráva | ||
---|---|---|---|
Jurasss Profil * |
#1 · Zasláno: 21. 3. 2008, 10:34:21
Dobrý den,
vytvářím si vlastní fotogalerii a při tvorbě náhledů (zmenšených fotek) mi to vypisuje chyby: Warning: getimagesize(1206091738.jpg): failed to open stream: No such file or directory in c:\program files\easyphp1-8\www\foto.php on line 51 Warning: imagecreatetruecolor(): Invalid image dimensions in c:\program files\easyphp1-8\www\foto.php on line 76 Warning: imagecreatefromjpeg(1206091738.jpg): failed to open stream: No such file or directory in c:\program files\easyphp1-8\www\foto.php on line 78 Warning: imagecopyresampled(): supplied argument is not a valid Image resource in c:\program files\easyphp1-8\www\foto.php on line 83 Warning: imagejpeg(): supplied argument is not a valid Image resource in c:\program files\easyphp1-8\www\foto.php on line 85 Script pro zmenšení fotek není můj a stáhl jsem ho někde z internetu. Jeho ZK je zde: function Resizer( $filename, //cesta k souboru, ktery chcete zmensit $copypath, //cesta, kam zmenseny soubor ulozit $MaxWidth, //maximalni sirka zmenseneho obrazku $MaxHeight) //maximalni vyska zmenseneho obrazku { //zjistime puvodni velikost obrazku list($OrigWidth, $OrigHeight) = getimagesize($filename); //hodnota 0 v parametrech MaxWidth resp. MaxHeight znamena, //ze sirka resp. vyska vysledku muze byt libovolna if ($MaxWidth == 0) $MaxWidth = $OrigWidth; if ($MaxHeight == 0) $MaxHeight = $OrigHeight; //nyni vypocitam pomer zmenseni $pw = $OrigWidth / $MaxWidth; $ph = $OrigHeight / $MaxHeight; if ($pw > $ph) $p = $pw; else $p = $ph; if ($p < 1) $p = 1; //v p ted mame pomer pro zmenseni //vypocitame vysku a sirku zmenseneho obrazku $NewWidth = (int)$OrigWidth / $p; $NewHeight = (int)$OrigHeight / $p; //vytvorime novy obrazek pozadovane vysky a sirky $image_p = imagecreatetruecolor($NewWidth, $NewHeight); //otevreme puvodni obrazek se souboru $image = imagecreatefromjpeg($filename); //a okopirujeme zmenseny puvodni obrazek do noveho imagecopyresampled($image_p, $image, 0, 0, 0, 0, $NewWidth, $NewHeight, $OrigWidth, $OrigHeight); //a ulozime imagejpeg($image_p, $copypath, 50); } Ta chybová hláška zmizí při 2-3 obnovení stránky (nebo opětovném vložení stejné fotky). Někdy se tam neoběví vůbec a jindy tam je "pořád". Prosím poraďte mi co je tam špatně a jak ty chyby napravit! Děkuji mnohokrát. |
||
Alphard Profil |
#2 · Zasláno: 21. 3. 2008, 10:40:53
zřejmě chybná cesta k obrázku, ve funkci samotné asi nebude problém
musíš zadat správné argumenty |
||
Jurasss Profil * |
#3 · Zasláno: 21. 3. 2008, 10:58:04
Alphard
Asi to tím nebude ... Nazev fotky předávám do $text ($text = $_FILES["jmeno_souboru"]["name"];) a chyby to vypisuje. Pokud jej zmením ručně ($text = "IMAG7392.jpg"), tak to chyby vypisuje také. Zkoušel jsem fota přejmenovávat a to takto: $text = time().".jpg"; $text = rand().".jpg"; a vždy to vypisuje ty chyby. Jak tedy přejmenovat název fotografie, aby byl "správný". Dodávám, že je potřeba aby se to přpisovalo automaticky a název byl unikátní. Děkuji |
||
Alphard Profil |
#4 · Zasláno: 21. 3. 2008, 11:12:18
jestli to uploaduješ, tak je název:
$_FILES['name_inputu_file']['tmp_name] |
||
Jurasss Profil * |
#5 · Zasláno: 21. 3. 2008, 11:44:25
Alphard
To by mohl být ten problém, ale pořád to neřeší to, že to nefunguje i když zadám název fotografie ručně. |
||
Alphard Profil |
#6 · Zasláno: 21. 3. 2008, 11:48:24
Jurasss
přečti si něco o uplodu a cestách k souborům, jestliže obrázek uplouaduješ, cesta k němu není totožná s názvem obrázku (a ručně ji zadáš těžko, musel by jsi najít nějaký temp, dostat se k němu apod.) |
||
Jurasss Profil * |
#7 · Zasláno: 21. 3. 2008, 12:06:21
Alphard
Díky za radu. Jdu si teda o tom něco přečíst. |
||
Časová prodleva: 18 let
|
0