Avatar billede fkp85 Praktikant
13. september 2012 - 08:45 Der er 1 løsning

image upload virker ikke...

Jeg har dette stykke kode som jeg har brugt mange gange før, men nu virker det ikke, det vil ikke oprette mapper til billederne og smide billederne i mapperne automatisk, nogen ideer?

---------------------------------------------------------------

<h2>Upload medarbejder billede</h2><br />
Vælg medarbejder:<br />
    <form action="" method="post">
        <select name="em" id="em" style="width:125px;"">
            <option value="0">Medarbejdere</option>
            <?
                $query = mysql_query("SELECT name, id FROM employees ORDER BY id ASC") or die(mysql_error());
                while($res = mysql_fetch_assoc($query))
                {
                    echo '<option value="'.$res['id'].'">'.$res['name'].'</option>';
                }
            ?>
        </select><br /><br />
        Vælg billede:<br />
        <input type="file" name="em_pic"/>
        <br />
        <br />
        <input type="submit" name="addem" value="Gem" />
        <br />
    </form>
<?php
if(isset($_POST["addem"])){
    echo "test";
    $allowed_filetypes = array('jpg','png','gif','jpeg','tif');
            $mainfolder = "images";
            $subfolder = "upload";
            $sizelimit = 2048576;
           
            $_SESSION['eRR'] = array();
            if(!empty($_FILES['em_pic']['name'])){
                if($_FILES['em_pic']['size'] < $sizelimit){
                    $file_ext = strtolower(pathinfo($_FILES['em_pic']['name'], PATHINFO_EXTENSION));
                    if(in_array($file_ext,$allowed_filetypes)){
                        if(is_uploaded_file($_FILES['em_pic']['tmp_name'])){
           
                            if(!is_dir($mainfolder)){
                                mkdir($mainfolder,0777);
                            };
                            if(!is_dir($mainfolder."/".$subfolder)){
                                mkdir($mainfolder."/".$subfolder,0777);
                            };
                           
                            $dest_file1 = sha1(microtime().$_FILES['em_pic']['name']).".".$file_ext;
           
                            if(move_uploaded_file($_FILES['em_pic']['tmp_name'],$mainfolder."/".$subfolder."/".$dest_file1)){
       
                                // Definerer Start og slut billede
                                $start_image = $mainfolder."/".$subfolder."/".$dest_file1;
                                $end_image = $mainfolder."/".$subfolder."/thumb_".$dest_file1;
                               
                                // Får vores function til at åbne vores startbillede via vores function
                                $image = open_image($start_image);
                               
                                // Hvis dette kan åbnes (altså ikke returnerer en falsk værdi)
                                if($image !== false){
                                    // Finder fysisk størrelse på vores billede
                                    $width = imagesx($image);
                                    $height = imagesy($image);
                                   
                                    // Definerer vi ønsket størrelse på billedets slutresultat
                                    $width_new = 250;
                                    // Udregner nye højde.
                                    $height_new = $height * ($width_new / $width);
                               
                                    $image_resized = imagecreatetruecolor($width_new,$height_new);
                                    imagecopyresampled($image_resized,$image,0,0,0,0,$width_new,$height_new,$width,$height);
                                   
                                    if(!isset($image_resized)){
                                        $image_resized = $image;
                                    };
                                   
                                    imagejpeg($image_resized,$end_image);
                                   
                                }else{
                                    echo "<div class='alert'>Dit billede kan ikke åbnes af GD lib.</div>";
                                };
       
                            }else{
                                $_SESSION['eRR'][] = "<div class='alert'>Fejl ved flytning.</div>";
                            };
                        }else{
                            $_SESSION['eRR'][] = "<div class='alert'>Der er sket en fejl i upload, kontakt venligst administrator.</div>";
                        };
                    }else{
                        $_SESSION['eRR'][] = "<div class='alert'>Den ønskede filtype er ikke gyldig.</div>";
                    };
                }else{
                    $_SESSION['eRR'][] = "<div class='alert'>Den ønskede fil er for stor.</div>";
                };
            };       
        $query = mysql_query("UPDATE employees SET e_pic='$dest_file1' WHERE id = '$_POST[em]'") or die(mysql_error());
};

    function open_image($file){
    $im = @imagecreatefromjpeg($file);
    if($im !== false){return $im;};

    $im = @imagecreatefromgif($file);
    if($im !== false){return $im;};

    $im = @imagecreatefrompng($file);
    if($im !== false){return $im;};

    $im = @imagecreatefromgd($file);
    if($im !== false){return $im;};

    $im = @imagecreatefromgd2($file);
    if($im !== false){return $im;};

    $im = @imagecreatefromwbmp($file);
    if($im !== false){return $im;};

    $im = @imagecreatefromxbm($file);
    if($im !== false){return $im;};

    $im = @imagecreatefromstring($file);
    if($im !== false){return $im;};

    return false;
    };   
};
Avatar billede fkp85 Praktikant
13. september 2012 - 09:04 #1
Har selv fundet fejlen :)
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