Avatar billede intel4004 Novice
19. august 2003 - 13:15 Der er 5 kommentarer og
2 løsninger

Problemer med imagejpeg() og skrivning til fil

Mit webhotel har GDLib 2.0.12 installeret - men ellers ved jeg ingenting om Gd Lib.

Jeg forsøger at bruge dette script:

<?php
function thumbnail($i,$nw,$p,$nn) {
    $img= imagecreatefromjpeg("$i");
    $ow= imagesx($img);
    $oh= imagesy($img);
    $scale = $nw/$ow;
    $nh=  ceil($oh*$scale);
    $newimg= imagecreate($nw,$nh);
    imagecopyresized($newimg,$img,0,0,0,0,$nw,$nh,$ow,$oh);
    imagejpeg($newimg, $p.$nn);
    return true;
}

//thumbnail(filetouse,newwidth,newpath,newname);
thumbnail("pic.jpg",100,"","xt.jpg");
?>

Men får denne fejl:

Warning: imagejpeg(): Unable to open 'xt.jpg' for writing in *sti skjult*/phplib/thumbnail.php on line 10

Pic.jpg eksisterer i samme mappe som thumbnail.php mens xt.jpg slet ikke eksisterer endnu - meningen var at scriptet skulle oprette thumbnail automatisk (i dette tilfælde xt.jpg).

Er det noget med filrettigheder på webhotellet??

Intel4004
Avatar billede ohmish Nybegynder
19. august 2003 - 13:46 #1
prøv med

$p = $_SERVER['DOCUMENT_ROOT']."/".$p."/";
Avatar billede ohmish Nybegynder
19. august 2003 - 13:47 #2
hov, nej.. sådan:

$p = $_SERVER['DOCUMENT_ROOT']."/";
Avatar billede ohmish Nybegynder
19. august 2003 - 13:51 #3
og måske skal
$newimg= imagecreate($nw,$nh);

istedet være:

$newimg = ImageCreateFromJPEG($i);
Avatar billede intel4004 Novice
19. august 2003 - 14:13 #4
ohmish:
Nope - jeg får samme fejl. Har også prøvet:
$p = $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['PHP_SELF'])."/";


Jeg har heller ikke rettigheder til at bruge chmod():

Warning: chmod(): Operation not permitted

Har aldrig brugt selv chmod(), men tænkte at det kunne være det.
Avatar billede intel4004 Novice
19. august 2003 - 15:11 #5
OK - blev nødt til at brug chmod() via FTP adgang. Jeg har sat rettighederne til 777 og nu virker det, men er dette nødvendigt? Alle som besøger sitet skal (igennem PHP scriptet) kunne skrive skrive til mappen.

Intel4004
Avatar billede ohmish Nybegynder
22. august 2003 - 10:03 #6
prøv at sætte denne under thumbnail("pic.jpg",100,"","xt.jpg") :

chmod("pic.jpg", 0755); eller chmod("xt.jpg", 0755);

ellers prøv at sætte den her lige før return true;

chmod($i, 0755); eller chmod($nn, 0755);
Avatar billede intel4004 Novice
22. august 2003 - 20:07 #7
Jeg har slet ikke adgang til at chmod'en via PHP. Men jeg har faktisk fået det til fungere.

Lukker.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester