Avatar billede krydset Nybegynder
10. maj 2004 - 09:18 Der er 34 kommentarer og
4 løsninger

Hvad betyde Resource id #

Hejsa hvad betyder det når php udskriver

Resource id #4
Resource id #6
Resource id #8
Resource id #10
Resource id #12
Resource id #14
Resource id #16
Resource id #18
Resource id #20
Resource id #22

//Mvh Krydset
Avatar billede sukos Juniormester
10. maj 2004 - 09:21 #1
æh, det er en var, som du skal "behandle" for at få korrekt output, mener jeg da! :O)
Avatar billede krydset Nybegynder
10. maj 2004 - 09:23 #2
ved du hvorn man behandler den :-S?
Avatar billede phpwiz Nybegynder
10. maj 2004 - 09:23 #3
at det højst sandsynlig er et array du prøver at outputte
Avatar billede phpwiz Nybegynder
10. maj 2004 - 09:23 #4
echo $var[ting];
Avatar billede hmortensen Nybegynder
10. maj 2004 - 09:24 #5
Avatar billede sukos Juniormester
10. maj 2004 - 09:25 #6
Ja, prøv at vise koden for scriptet
Avatar billede krydset Nybegynder
10. maj 2004 - 09:27 #7
her er koden !!

<?php
$sti = "c:\www\pc-dk.dk\billeder\\";
if(is_dir($sti)) {
    if($dh = opendir($sti)) {
        while (($file = readdir($dh)) !== false) {
           
            $tekst = "Her skal være en tekst";    //Teksten som der skal stå på billedet
            $font = "c:\winnt\fonts\verdana.ttf";    //Stien til font som der skal skrives med på billedet
            $size = 60;    //Tekststørrelsen
            $angel = 0;    //Rotations neveau
            $tekstbox = imagettfbbox($size, $angel, $font, $tekst);
            $textx = $tekstbox[4];
            $texty = $tekstbox[5];
            $im = @imagecreatefromjpeg("c:/www/pc-dk.dk/billeder/$file");
            $width = @imagesx($im);
            $height = @imagesy($im);
            $xstart = @$width-$textx-20;
            $ystart = @$height-$texty-20;
            $hvid = @imagecolorallocate($im, 68, 140, 230);
            @imagettftext($im, $size, $angel, $xstart, $ystart, $hvid, $font, $tekst);
           
            echo "$im<br>";
           
        }
        closedir($dh);
    }
}
?>
Avatar billede mcgoat Nybegynder
10. maj 2004 - 09:28 #8
det er funktionen imagecreatefromjpeg som returnerer et resource... se mere på : http://dk.php.net/manual/en/function.imagecreatefromjpeg.php hvordan man bruger det
Avatar billede mcgoat Nybegynder
10. maj 2004 - 09:30 #9
Det er vel egentlig et slags handle eller pointer som peger på et objekt, som så andre funktioner som f.eks imagesx, imagesy osv kan bruge.
Avatar billede krydset Nybegynder
10. maj 2004 - 09:32 #10
Det jeg skal er at jeg skal ha udskrevet billederne som den læser fra mappen
Avatar billede mcgoat Nybegynder
10. maj 2004 - 09:34 #11
så skal du jo have lavet noget html:
echo "<img src='".$mitbillede."'>";
Avatar billede sukos Juniormester
10. maj 2004 - 09:36 #12
Nu bruger du jo en masse @ så du ikke får nogen fejl.

Men ellers, du mangler vel også

imagedestroy($im);

og så bruge

<img src=\"/billeder/". $im ."\">
Avatar billede mcgoat Nybegynder
10. maj 2004 - 09:36 #13
men skal du sætte noget tekst på billederne og derefter gemme dem igen, eller skal billederne forblive originale, men bare vises med tekst?
Avatar billede krydset Nybegynder
10. maj 2004 - 09:37 #14
Ja det er jeg godt klar over men
echo "<img src='$im'><br>";

retunere tomme billeder pga. Resource id jeg ved ikke hvad jeg skal bruge til at udskrive billederne med
Avatar billede mcgoat Nybegynder
10. maj 2004 - 09:40 #15
det skal heller ikke være $im som er en resource. du kan jo f.eks gemme billedet som ligger i $im på din HD og derefter vise det.

Du kan prøve at kigge på funktionen: imagejpeg på http://dk.php.net/manual/en/function.imagejpeg.php
Avatar billede krydset Nybegynder
10. maj 2004 - 09:40 #16
sukos--> Jeg bruger @ pga . & .. ikke er billeder i mappen og de giver fejl.

-->Jeg skal vise dem med tekst på de skal ikke gemmes med tekst på, men forblive orginale
Avatar billede mcgoat Nybegynder
10. maj 2004 - 09:41 #17
så skal du bare bruge funktionen imagejpeg.. huske at sende en header først med header("Content-type: image/jpeg");
Avatar billede mcgoat Nybegynder
10. maj 2004 - 09:42 #18
og så lad være med at skrive noget html ud på siden.
Avatar billede krydset Nybegynder
10. maj 2004 - 09:45 #19
Okay har nu det her
<?php
$sti = "c:\www\pc-dk.dk\billeder\\";
if(is_dir($sti)) {
    if($dh = opendir($sti)) {
        while (($file = readdir($dh)) !== false) {
           
            $tekst = "Her skal være en tekst";    //Teksten som der skal stå på billedet
            $font = "c:\winnt\fonts\verdana.ttf";    //Stien til font som der skal skrives med på billedet
            $size = 60;    //Tekststørrelsen
            $angel = 0;    //Rotations neveau
            $tekstbox = imagettfbbox($size, $angel, $font, $tekst);
            $textx = $tekstbox[4];
            $texty = $tekstbox[5];
            $im = @imagecreatefromjpeg("c:/www/pc-dk.dk/billeder/$file");
            $width = @imagesx($im);
            $height = @imagesy($im);
            $xstart = @$width-$textx-20;
            $ystart = @$height-$texty-20;
            $hvid = @imagecolorallocate($im, 68, 140, 230);
            @imagettftext($im, $size, $angel, $xstart, $ystart, $hvid, $font, $tekst);
            header("Content-type: image/jpeg");
            @imagejpeg($im);
            @imagedestroy($im);
           
            echo "<img src='$im'><br>";
           
        }
        closedir($dh);
    }
}
?>

i siger så jeg ikke må udskrive html på siden pga headerne, okay fair nok, men hvordan skal jeg så få vist billederne
Avatar billede hmortensen Nybegynder
10. maj 2004 - 09:45 #20
Du kunne jo lige indsætte det her, for ikke at rode med . og ..:
if ($file != "." && $file != "..")
Avatar billede mcgoat Nybegynder
10. maj 2004 - 09:47 #21
prøv det her:

<?php
header("Content-type: image/jpeg");
$sti = "c:\www\pc-dk.dk\billeder\\";
if(is_dir($sti)) {
    if($dh = opendir($sti)) {
        while (($file = readdir($dh)) !== false) {
           
            $tekst = "Her skal være en tekst";    //Teksten som der skal stå på billedet
            $font = "c:\winnt\fonts\verdana.ttf";    //Stien til font som der skal skrives med på billedet
            $size = 60;    //Tekststørrelsen
            $angel = 0;    //Rotations neveau
            $tekstbox = imagettfbbox($size, $angel, $font, $tekst);
            $textx = $tekstbox[4];
            $texty = $tekstbox[5];
            $im = @imagecreatefromjpeg("c:/www/pc-dk.dk/billeder/$file");
            $width = @imagesx($im);
            $height = @imagesy($im);
            $xstart = @$width-$textx-20;
            $ystart = @$height-$texty-20;
            $hvid = @imagecolorallocate($im, 68, 140, 230);
            @imagettftext($im, $size, $angel, $xstart, $ystart, $hvid, $font, $tekst);
            header("Content-type: image/jpeg");
            @imagejpeg($im);
            @imagedestroy($im);
           
            imagejpeg($im);
           
        }
        closedir($dh);
    }
}
?>
Avatar billede mcgoat Nybegynder
10. maj 2004 - 09:48 #22
<?php
header("Content-type: image/jpeg");
$sti = "c:\www\pc-dk.dk\billeder\\";
if(is_dir($sti)) {
    if($dh = opendir($sti)) {
        while (($file = readdir($dh)) !== false) {
           
            $tekst = "Her skal være en tekst";    //Teksten som der skal stå på billedet
            $font = "c:\winnt\fonts\verdana.ttf";    //Stien til font som der skal skrives med på billedet
            $size = 60;    //Tekststørrelsen
            $angel = 0;    //Rotations neveau
            $tekstbox = imagettfbbox($size, $angel, $font, $tekst);
            $textx = $tekstbox[4];
            $texty = $tekstbox[5];
            $im = @imagecreatefromjpeg("c:/www/pc-dk.dk/billeder/$file");
            $width = @imagesx($im);
            $height = @imagesy($im);
            $xstart = @$width-$textx-20;
            $ystart = @$height-$texty-20;
            $hvid = @imagecolorallocate($im, 68, 140, 230);
            @imagettftext($im, $size, $angel, $xstart, $ystart, $hvid, $font, $tekst);
            header("Content-type: image/jpeg");
            @imagejpeg($im);
            @imagedestroy($im);           
        }
        closedir($dh);
    }
}
?>
Avatar billede mcgoat Nybegynder
10. maj 2004 - 09:48 #23
<?php
header("Content-type: image/jpeg");
$sti = "c:\www\pc-dk.dk\billeder\\";
if(is_dir($sti)) {
    if($dh = opendir($sti)) {
        while (($file = readdir($dh)) !== false) {
           
            $tekst = "Her skal være en tekst";    //Teksten som der skal stå på billedet
            $font = "c:\winnt\fonts\verdana.ttf";    //Stien til font som der skal skrives med på billedet
            $size = 60;    //Tekststørrelsen
            $angel = 0;    //Rotations neveau
            $tekstbox = imagettfbbox($size, $angel, $font, $tekst);
            $textx = $tekstbox[4];
            $texty = $tekstbox[5];
            $im = @imagecreatefromjpeg("c:/www/pc-dk.dk/billeder/$file");
            $width = @imagesx($im);
            $height = @imagesy($im);
            $xstart = @$width-$textx-20;
            $ystart = @$height-$texty-20;
            $hvid = @imagecolorallocate($im, 68, 140, 230);
            @imagettftext($im, $size, $angel, $xstart, $ystart, $hvid, $font, $tekst);
            @imagejpeg($im);
            @imagedestroy($im);
           
            imagejpeg($im);
           
        }
        closedir($dh);
    }
}
?>


hehe, var vist mere rigtigt... ?
Avatar billede mcgoat Nybegynder
10. maj 2004 - 09:49 #24
Aghrrrr.... vi prøver igen

<?php
header("Content-type: image/jpeg");
$sti = "c:\www\pc-dk.dk\billeder\\";
if(is_dir($sti)) {
    if($dh = opendir($sti)) {
        while (($file = readdir($dh)) !== false) {
           
            $tekst = "Her skal være en tekst";    //Teksten som der skal stå på billedet
            $font = "c:\winnt\fonts\verdana.ttf";    //Stien til font som der skal skrives med på billedet
            $size = 60;    //Tekststørrelsen
            $angel = 0;    //Rotations neveau
            $tekstbox = imagettfbbox($size, $angel, $font, $tekst);
            $textx = $tekstbox[4];
            $texty = $tekstbox[5];
            $im = @imagecreatefromjpeg("c:/www/pc-dk.dk/billeder/$file");
            $width = @imagesx($im);
            $height = @imagesy($im);
            $xstart = @$width-$textx-20;
            $ystart = @$height-$texty-20;
            $hvid = @imagecolorallocate($im, 68, 140, 230);
            @imagettftext($im, $size, $angel, $xstart, $ystart, $hvid, $font, $tekst);
            @imagejpeg($im);
            @imagedestroy($im);
           
        }
        closedir($dh);
    }
}
?>
Avatar billede krydset Nybegynder
10. maj 2004 - 09:53 #25
Næsten men den udskriver kun et billede !!
Avatar billede mcgoat Nybegynder
10. maj 2004 - 09:55 #26
kun 1 billede? men med rigtig tekst osv på?
Avatar billede hmortensen Nybegynder
10. maj 2004 - 09:55 #27
Ja, pga headeren.

Så skal du kalde billederne frem sådan her:
<img src="pic.php?pic=<?=$file?>">
Avatar billede mcgoat Nybegynder
10. maj 2004 - 09:57 #28
yep, så du har en anden side som så siger hvilket billede som skal vises. og den side du har gang i nu laver det billede.
Avatar billede mcgoat Nybegynder
10. maj 2004 - 10:04 #29
<?php
header("Content-type: image/jpeg");           
$file = $_GET['pic'];
            $tekst = "Her skal være en tekst";
            $font = "c:\winnt\fonts\verdana.ttf";
            $size = 60;    //Tekststørrelsen
            $angel = 0;    //Rotations neveau
            $tekstbox = imagettfbbox($size, $angel, $font, $tekst);
            $textx = $tekstbox[4];
            $texty = $tekstbox[5];
            $im = @imagecreatefromjpeg("c:/www/pc-dk.dk/billeder/$file");
            $width = @imagesx($im);
            $height = @imagesy($im);
            $xstart = @$width-$textx-20;
            $ystart = @$height-$texty-20;
            $hvid = @imagecolorallocate($im, 68, 140, 230);
            @imagettftext($im, $size, $angel, $xstart, $ystart, $hvid, $font, $tekst);
            @imagejpeg($im);
            @imagedestroy($im);
           
        }
        closedir($dh);
    }
}
?>

Er den side som laver billederne... og så har du så den side hvor billederne skal vises:

det er her du har din løkke som kører pics igennem og så kalder den anden side til at lave dem
<img src="pic.php?pic=<?=$file?>">
Avatar billede hmortensen Nybegynder
10. maj 2004 - 10:04 #30
Utestet og sikkert fyldt med fejl:

-------------liste.php--------------
<?php
$sti = "c:\www\pc-dk.dk\billeder\";
if(is_dir($sti)) {
    if($dh = opendir($sti)) {
        while (($file = readdir($dh)) !== false) {
            if ($file != "." && $file != "..") {
            echo "<img src=\"pic.php?pic=".$file."\">";
        }
           
        }
        closedir($dh);
    }
}
?>
-------------liste.php--------------


--------------pic.php---------------
<?php
            $tekst = "Her skal være en tekst";    //Teksten som der skal stå på billedet
            $font = "c:\winnt\fonts\verdana.ttf";    //Stien til font som der skal skrives med på billedet
            $size = 60;    //Tekststørrelsen
            $angel = 0;    //Rotations neveau
            $tekstbox = imagettfbbox($size, $angel, $font, $tekst);
            $textx = $tekstbox[4];
            $texty = $tekstbox[5];
            $im = @imagecreatefromjpeg("c:/www/pc-dk.dk/billeder/".$_GET["pic"]);
            $width = @imagesx($im);
            $height = @imagesy($im);
            $xstart = @$width-$textx-20;
            $ystart = @$height-$texty-20;
            $hvid = @imagecolorallocate($im, 68, 140, 230);
            @imagettftext($im, $size, $angel, $xstart, $ystart, $hvid, $font, $tekst);
            header("Content-type: image/jpeg");
        ImageJPEG($im);
        ImageDestroy($im);
?>
--------------pic.php---------------
Avatar billede mcgoat Nybegynder
10. maj 2004 - 10:05 #31
den anden side:

<?php
$sti = "c:\www\pc-dk.dk\billeder\\";
if(is_dir($sti)) {
    if($dh = opendir($sti)) {
        while (($file = readdir($dh)) !== false) {
          echo "<img src='pic.php?pic='".$file."'>";
        }
        closedir($dh);
    }
}
?>
Avatar billede mcgoat Nybegynder
10. maj 2004 - 10:07 #32
hehe, 2 forskellige løsninger som sikkert begge virker :)
Avatar billede krydset Nybegynder
10. maj 2004 - 10:08 #33
hindu_skp der er fejl i list.php
if ($file != "." && $file != "..") { //i denne linie ved dobbelt ..
Avatar billede hmortensen Nybegynder
10. maj 2004 - 10:31 #34
hmm, weird...

bare ukomenterer den så
Avatar billede krydset Nybegynder
10. maj 2004 - 10:36 #35
hindu skp lig et svar du skal osse have lidt point
Avatar billede mcgoat Nybegynder
10. maj 2004 - 11:23 #36
hva mæ mig... hehe :)
Avatar billede hmortensen Nybegynder
10. maj 2004 - 12:13 #37
Virker det nu ?
Avatar billede krydset Nybegynder
19. maj 2004 - 14:29 #38
i alle for lidt point kan ikke finde rundt i det, ja dte virker nogenlune leger selv lidt videre i det :-P

Takker
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