Avatar billede mr-xmas Nybegynder
26. september 2007 - 17:25 Der er 8 kommentarer

thumbnail i upload script

HEjsa

jeg kunne godt tænke mig at mit uploadscript kunne lave en thumbnail så den ikke skal læse alle billeder i fuld størresle altid :)

og så kunne jeg os godt tænke mig siden selv lukker når den er uploadet men det gør den ikke selv om jeg har sat en timer til det

body onLoad="setTimeout(window.close, 300)">
koden ser sådan ud :)

<?php
session_start();
function alert() {
if(isset($_SESSION["besked"])) {
echo"Billedet er modtaget :-)";
unset($_SESSION["besked"]);
}else{
echo"";
}
}

// ca. Kb må billedet fylde
$kb = 200;

// min. bredde og højde (minimum???)
$minw = 100;
$minh = 100;

// Det dir som der skal uploades til, med skråstreger
$galleridir = "/galleri/billeder/";

// Fuld sti til galleridir
$moveto = $_SERVER["DOCUMENT_ROOT"] . $galleridir;

// Hvor sendes man hen efter upload?
$redir = $_SERVER["PHP_SELF"];

if (isset($_FILES["upfile"])) {

// Array med fejlbeskeder sat med $_FILES["upfile"]["error"]
$arg = array(1 => "Filen er større end tilladt upload i php.ini", 2 => "Filen er større end ". round(($kb*1024)/1000) ." Kb", 3 => "Undskyld, men kun en del af filen blev uploadet", 4 => "Vælg en fil til upload!");

// Array med filtyper, til brug for det endelige filnavn
$filetypes = array(1 => "gif", 2 => "jpg", 3 => "png");


    if($_FILES["upfile"]["error"] > 0) {
    $_SESSION["besked"] = strtr($_FILES["upfile"]["error"], $arg);
    header("Location:". $redir ."");
    exit();
    }

    if($_FILES["upfile"]["size"] > ($kb*1024)) {
    $_SESSION["besked"] = "Filen er for stor til upload!!!";
    header("Location:". $redir ."");
    exit();
    }

    if(false == ($str = getimagesize($_FILES["upfile"]["tmp_name"]))) {
    $_SESSION["besked"] = "Valgte fil til upload er ikke en billedfil!!!";
    header("Location:". $redir ."");
    exit();
    }

    if($str[2] > 3) {
    $_SESSION["besked"] = "Kun gif, jpg og png filer kan uploades!!!";
    header("Location:". $redir ."");
    exit();
    }

    if($str[0] < $minw) {
    $_SESSION["besked"] = "Billedet er under ". $minw ." px. i bredden!";
    header("Location:". $redir ."");
    exit();
    }

    if($str[1] < $minh) {
    $_SESSION["besked"] = "Billedet er under ". $minh ." px. i højden!";
    header("Location:". $redir ."");
    exit();
    }

    // FILNAVN UDEN FILTYPE
    $newname = time() ."_". rand(1000, 9999);

    // FILTYPEN
    $filtypen = strtr($str[2], $filetypes);

    $upname = $newname .".". $filtypen;

    if(move_uploaded_file($_FILES["upfile"]["tmp_name"], $moveto . $upname)) {
    $_SESSION["besked"] = "Billedet er blevet uploadet! Luk bare siden :-)";
    require("config.php");
    $kategori = $_REQUEST['kategori'];
    $kommentar = $_REQUEST['kommentar'];
    mysql_connect($mysql_host, $mysql_user, $mysql_pw);
    mysql_select_db($mysql_db);
    mysql_query("insert into BP_galleri (upname, kategori, kommentar, dato) values ('$upname', '$kategori', '$kommentar', '$dato')") or die(mysql_error());
    }else{
    $_SESSION["besked"] = "Billedet kunne desværre ikke flyttes!";
    }

    header("Location:". $redir ."");
    exit();

}
?>
<style type="text/css">
<!--
body,td,th {
    color: #FFFFFF;
}
-->
</style>
<html><head>
<title>BoomParty // www.Boomparty.dk</title>
<script language="javascript" src="java/progressbar.js">
</script>
<style type="text/css">
<!--
body {
    background-image: url(../../../images/bg.gif);
}
-->
</style>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body onLoad="setTimeout(window.close, 300)">
</body></html>

<?php

if(!is_dir($moveto)) {
echo"Dir som fil skal flyttes til eksisterer ikke!!!";
}else{
?>


<?php
}
?>
Avatar billede jakobdo Ekspert
26. september 2007 - 17:53 #1
Har du kigget på min artikler om netop upload og resize af et billede?
Avatar billede mr-xmas Nybegynder
26. september 2007 - 18:18 #2
nej det har jeg ikke kan jeg lige gøre

men kan du fortælle mig hvorfor den så ikke vil lukke siden
Avatar billede jakobdo Ekspert
26. september 2007 - 18:22 #3
Hvis det er i dit HOVEDVINDUE, så kan man ikke lukke det med CLOSE().
Men hvis du f.eks. laver et popup vindue, så burde du kunne lukke det med window.close()
Avatar billede mr-xmas Nybegynder
26. september 2007 - 18:25 #4
okay så er det derfor selvom jeg åbner den med _blank så er det vel et hovedvindue

takker :) prøver lige at læse det med billeder du har skrevet
Avatar billede mr-xmas Nybegynder
26. september 2007 - 18:43 #5
den lukker ikke selv selvom det er i popup vindue
Avatar billede jakobdo Ekspert
26. september 2007 - 20:04 #6
Avatar billede mr-xmas Nybegynder
27. september 2007 - 18:19 #7
kan du sige mig hvorfor den ikke lægger det ind siden jeg har lavet det til popup i stedet
da jeg slettede action="/galleri/upload_billede.php" og lavede det til
onsubmit="popup('/galleri/upload_billede.php','Uploader','200','100');"
Avatar billede jakobdo Ekspert
27. september 2007 - 19:04 #8
Jeg tror det skyldes det postede data ikke sendes til dit popup vindue.
Og nu spørger du så nok hvordan man gør det, og det ved jeg ikke lige nu. :o)
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