Bildgröße verändern ohne IMageCreate!?

Grunge

Erfahrenes Mitglied
Hey Leute,

ich habe ein kleines Problem. Und zwar will ich einen Dateiupload ermöglichen. Bilder sollen dabei in der größe verändert werden. Das klappt auch alles, wenn da nicht das hier wäre:
Warning: imagejpeg() [function.imagejpeg]: SAFE MODE Restriction in effect. The script whose uid is 799 is not allowed to access / owned by uid 0 in /var/www/web60/html/g2g/_functions.php on line 65

Warning: imagejpeg() [function.imagejpeg]: Invalid filename in /var/www/web60/html/g2g/_functions.php on line 65

Warning: imagejpeg() [function.imagejpeg]: SAFE MODE Restriction in effect. The script whose uid is 799 is not allowed to access / owned by uid 0 in /var/www/web60/html/g2g/_functions.php on line 69

Warning: imagejpeg() [function.imagejpeg]: Invalid filename in /var/www/web60/html/g2g/_functions.php on line 69

Der Provider weigert sich jedoch Safe Mode auszustellen. Kann man irgendwie anders die Bildgröße verändern, bzw die mit ImageCreate neu generierten Bilder mit move_uploaded_file() übertragen!? Habe ich versucht, aber dann kommt nichts. Er gibt keinen Fehler aus, lädt die Bilder nur nicht hoch . . . Das sah bei mir dann so aus:

PHP:
 function createImage( $srcImg, $width, $height, $srcImg_info)
    {
        if( !is_resource($srcImg) || get_resource_type($srcImg) != 'gd' || !is_array($srcImg_info) ) {
            return false;
        }
        $dstImg = imagecreatetruecolor($width, $height);
        imagecopyresampled($dstImg, $srcImg, 0, 0, 0, 0, $width, $height, $srcImg_info[0], $srcImg_info[1]);
        return $dstImg;
    }

    function upload_picture( $srcFilepath, $nick )
    {

        if( !file_exists($srcFilepath) || !is_readable($srcFilepath) ) {
            return false;
        }

        $filename = $nick.'_'.time().'.jpg';
        $imgDir = '/user_images/';
        $thumbDir = '/user_images/thumbnails';
        $srcImg_info = getimagesize($srcFilepath);

        $dstImg = createImage(ImageCreateFromJPEG($srcFilepath), 200, 250,$srcImg_info);
      //  Imagejpeg($dstImg, $thumbDir.'/'.$filename, 72);
move_uploaded_file($dstImg,$thumbDir.$filename);
        ImageDestroy($dstImg);

        $dstImg = createImage(ImageCreateFromJPEG($srcFilepath), 640, 480,$srcImg_info);
        //Imagejpeg($dstImg, $imgDir.'/'.$filename, 72);
move_uploaded_file($dstImg,$imgDir.$filename);
        ImageDestroy($dstImg);
    }

Wobei "upload_picture()" aufgerufen wird. Wäre toll wenn jemand ne möglichkeit kennt das Imagejpeg wegzubekommen. . .
 
Versuche mal zuerst das hochgeladene Bild zu verschieben und es erst denn zu skalieren.
 
wie kann man das am Besten machen?! move_uploaded_file() und dann imagecreate!? Dann brauch ich doch auch wieder ImageJPEG oder nicht?!
 
Zuletzt bearbeitet:
Zurück