---
title: "Thumbnailen blir bara svart"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/159720-thumbnailen-blir-bara-svart"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "donkey"
published: "2007-04-28T15:29:59.000Z"
updated: "2007-04-28T16:50:41.000Z"
replies: 2
views: 231
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/159720-thumbnailen-blir-bara-svart"
---

# Thumbnailen blir bara svart

## #1 — donkey, 2007-04-28T15:29Z

Har försökt få diverse olika thumbnail-script att fungera, men mina php-kunskaper räcker inte riktigt till. Det jag kommit närmast med är detta. Men problemet är att thumbnailarna blir svarta

```php
<?php
session_start();
$_SESSION['userID'] = 1;
$user = $_SESSION['userID'];

 
include "conn.php";

error_reporting(E_ALL);
 
// Vilka filer skall få laddas upp?
$ext = array(".zip", ".jpg", ".gif");
 
// Max storlek
$max_file_size = "400000";
 
// Vart skall filerna laddas till?
// behörighet krävs!
$target_dir = "upload/$user/";
 
// Fixa lower case
$_FILES['userfile']['name'] = strtolower($_FILES['userfile']['name']);
 
// Inga mellanslag
$_FILES['userfile']['name'] = str_replace(' ', '_', $_FILES['userfile']['name']);
 
//Inga '$'
$_FILES['userfile']['name'] = str_replace('$', '_', $_FILES['userfile']['name']);
 
$file_name = $_FILES['userfile']['name'];
$file_name = strrchr($file_name, ".");
 
if(!in_array($file_name,$ext))
{
   $error = "Du kan inte ladda upp en fil med det filformatet. Dom som stöds är ";
   foreach( $ext as $exts ){
   $error .= "$exts ";
   }
   die ("$error");
}
$file_size = $_FILES['userfile']['size'];
if($file_size > $max_file_size) {
   die ("Filen är för stor, max storleken är ".$max_file_size." Kb");
}
// Kolla att en fil är uppladdad och flytta den till målkatalogen
if (isset($_POST['submit']) && is_uploaded_file($_FILES['userfile']['tmp_name'])) {
   move_uploaded_file($_FILES['userfile']['tmp_name'], $target_dir.$_FILES['userfile']['name']);
 

$user = $_SESSION['userID'];
$fil = $_FILES["userfile"]["name"];
$datum = date("Y-m-d H:i");

$dbinfo = mysql_db_query("wse104056", "INSERT log34 (user, file, date) VALUES ('$user', '$fil', '$datum')");
 

function createThumb($name, $thumbname, $new_w, $new_h)
{
    $ext = strtolower( substr( $name, strrpos( $name, '.') + 1 ) );

    switch( $ext )
    {
        case 'jpg':
        case 'jpeg':
            $imgfunc = 'imagejpeg';
            $name = imagecreatefromjpeg( $name );
            break;
        case 'png':
            $imgfunc = 'imagepng';
            $src_img = imagecreatefrompng( $name );
            break;
        case 'gif':
            $imgfunc = 'imagegif';
            $src_img = imagecreatefromgif( $name );
            break;
        default:
            return false;
    }

    $old_x = imageSX( $name );
    $old_y = imageSY( $name );

    if( $old_x > $old_y ) 
    {
        $thumb_w = $new_w;
        $thumb_h = $old_y * ( $new_h / $old_x );
    }
    elseif( $old_x < $old_y ) 
    {
        $thumb_w = $old_x * ( $new_w / $old_y );
        $thumb_h = $new_h;
    }
    elseif( $old_x == $old_y ) 
    {
        $thumb_w = $new_w;
        $thumb_h = $new_h;
    }

    $dst_img = ImageCreateTrueColor( $thumb_w, $thumb_h );

    imagecopyresampled( $thumbname, $name, 0, 0, 0, 0, $thumb_w, $thumb_h, $old_x, $old_y ); 
    
    $imgfunc( $thumbname, $thumbname ); 

    imagedestroy( $thumbname ); 
    imagedestroy( $name );
    
    return true;
}

createThumb($fil, 'thumbs/'.$fil, 200, 150); 

Header ("Location: upload.php");
}
 
?>
```

 

De felmeddelande jag får är

**Warning: imagecreatefromjpeg(dsc00446.jpg) \[function.imagecreatefromjpeg\]: failed to open stream: No such file or directory in /usr/home/web/wse104056/log34/upload2.php on line 81

Warning: imagesx(): supplied argument is not a valid Image resource in /usr/home/web/wse104056/log34/upload2.php on line 95

Warning: imagesy(): supplied argument is not a valid Image resource in /usr/home/web/wse104056/log34/upload2.php on line 96

Warning: imagecopyresampled(): supplied argument is not a valid Image resource in /usr/home/web/wse104056/log34/upload2.php on line 116

Warning: imagejpeg(): supplied argument is not a valid Image resource in /usr/home/web/wse104056/log34/upload2.php on line 118

Warning: imagedestroy(): supplied argument is not a valid Image resource in /usr/home/web/wse104056/log34/upload2.php on line 120

Warning: imagedestroy(): supplied argument is not a valid Image resource in /usr/home/web/wse104056/log34/upload2.php on line 121**

Som sagt, säkert jag som inte riktigt förstår mej på grejjerna, men är det något enkelt fel som går att åtgärda?

Permalänk: https://www.webforum.nu/p/159720

## #2 — Peeer, 2007-04-28T16:28Z

Det första felmeddelandet tyder på att du skickat in en felaktig sökväg. Ändra

```php
$fil  = $_FILES["userfile"]["name"]; 
//Till
$fil = $target_dir.$_FILES['userfile']['name']);
```

Permalänk: https://www.webforum.nu/p/1970574

## #3 — donkey, 2007-04-28T16:50Z

ändrar jag det försvinner iof alla felmeddelanden, men ingen thumbnail genereras, inte ens en svart

Permalänk: https://www.webforum.nu/p/1970580

---

Tråden på webben: https://www.webforum.nu/amne/php/159720-thumbnailen-blir-bara-svart
