Avatar billede floetti Nybegynder
20. februar 2004 - 04:40 Der er 9 kommentarer og
1 løsning

Mangler et script

Hej !

Nu håber jeg at nogen kan hjælpe mig lidt!?...

Eg har lavet en upload funktion, hvor man skal uploade et lille og et stort billede. Det kan blive ret irreterende i længden, da man ik har en særlig god internet forbindelse.

Nå så er det spørgsmålet, om der er nogen som har et script eller ved om et sted hvor man kan lære at bruge resize() funktionen til PHP??

Ville selvfølgelig være meget glad om der var nogen som have et sådan færdigt script liggende?.

På forhånd tak

//floetti
Avatar billede drbean Nybegynder
20. februar 2004 - 08:25 #1
Dnne funktion skulle kunne gøre det:

function ResizeJpg($sImage,$Width, $Height)
    {
        $dTemp = ImageCreateTrueColor($Width,$Height)or die ("Cannot Initialize new GD image stream");
        $image = ImageCreateFromJpeg($sImage);
       
        $imagedata = getimagesize($sImage);
       
        imagecopyresampled ($dTemp, $image,0,0,0,0,$Width,$Height, $imagedata[0], $imagedata[1]);
        imagejpeg($dTemp, $sImage,100);
    }
Avatar billede xyborx Nybegynder
20. februar 2004 - 14:01 #2
Jeg har et liggende her: www.xyborx.dk/image.php - gammelt, men det virkede fint sidst jeg prøvede :)
Avatar billede floetti Nybegynder
20. februar 2004 - 15:41 #3
Hej drbean! Hvis jeg skal angive en mappe at lægge billede i, hvordan gøres det.... hvis det kommer fra en "form"??
Avatar billede drbean Nybegynder
20. februar 2004 - 16:01 #4
Dette gøres med
move_uploaded_file($src,$dst)or die("Desværre er der sket en fejl!");

$src er stien til billede som ligger i dit temp dir
$dst er stien til mappen du gerne vil ligge det i
Avatar billede drbean Nybegynder
20. februar 2004 - 16:11 #5
Det du kan prøve er, når du har din PHP side om modtager dine data fra din form skriver du:

        $aFile = $_FILES['img'];
        echo $aFile['type'].'<br>';
    echo $aFile['size'].'<br>';
    echo $aFile['tmp_name'].'<br>';
    echo $aFile['name'].'<br>';

Så kan du se de forskellige variabler som du få med over. Håber det kan hjælpe.
Avatar billede floetti Nybegynder
22. februar 2004 - 18:23 #6
Til drbean: Hvordan får jeg billedet frem i det første eksempel du vidste mig, hvor billedet er blevet 'resized'??
Avatar billede drbean Nybegynder
23. februar 2004 - 10:02 #7
Du få billede ind i funktion via variablen $sImage, det skal være stien til billede. Det kan endten være i temp dir, eller i det dir du nu vil ligge billedet i. Bagefter gemmer den billedet samme sted, så stien $sImage vil stadig være det nye billede. Hvis du vil lave et nyt billede skal du bruge funktion copy : http://dk.php.net/manual/en/function.copy.php

Med den funktion kan du kopiere billedet over i en ny mappe, og bag efter resize den. Hvis det driller så lig dit script ind her, så skal jeg se hvad jeg kan gøre
Avatar billede floetti Nybegynder
22. juni 2004 - 17:07 #8
Hov... det var lige et spørgsmål som tømte min konto ;-)... men det er vist lidt siden den blev svaret senest, så jeg lukker bare igen.

Nu da det ikke er svaret, så tager jeg pointene igen, om du ikke har noget imod det drbean??
Avatar billede drbean Nybegynder
23. juni 2004 - 12:10 #9
Nææ.... Jeg er lige glad med point. Fik du det til at virke???
Avatar billede floetti Nybegynder
23. juni 2004 - 14:03 #10
Jo, jeg læste en del på nettet - så fandt jeg en tutorial;)

Men den med:
$aFile = $_FILES['img'];
echo $aFile['type'].'<br>';
echo $aFile['size'].'<br>';
echo $aFile['tmp_name'].'<br>';
echo $aFile['name'].'<br>';

hjalp en del, da jeg skulle finde størrelsen og typen på billedet;-)

//floetti
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