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
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
æh, det er en var, som du skal "behandle" for at få korrekt output, mener jeg da! :O)
ved du hvorn man behandler den :-S?
at det højst sandsynlig er et array du prøver at outputte
Ja, prøv at vise koden for scriptet
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); } } ?>
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.
Det jeg skal er at jeg skal ha udskrevet billederne som den læser fra mappen
så skal du jo have lavet noget html: echo "<img src='".$mitbillede."'>";
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 ."\">
men skal du sætte noget tekst på billederne og derefter gemme dem igen, eller skal billederne forblive originale, men bare vises med tekst?
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
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
så skal du bare bruge funktionen imagejpeg.. huske at sende en header først med header("Content-type: image/jpeg");
og så lad være med at skrive noget html ud på siden.
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
Du kunne jo lige indsætte det her, for ikke at rode med . og ..: if ($file != "." && $file != "..")
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); } } ?>
<?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); } } ?>
<?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... ?
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); } } ?>
Næsten men den udskriver kun et billede !!
kun 1 billede? men med rigtig tekst osv på?
Ja, pga headeren. Så skal du kalde billederne frem sådan her: <img src="pic.php?pic=<?=$file?>">
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.
<?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?>">
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---------------
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); } } ?>
hehe, 2 forskellige løsninger som sikkert begge virker :)
hindu_skp der er fejl i list.php if ($file != "." && $file != "..") { //i denne linie ved dobbelt ..
hmm, weird... bare ukomenterer den så
hindu skp lig et svar du skal osse have lidt point
i alle for lidt point kan ikke finde rundt i det, ja dte virker nogenlune leger selv lidt videre i det :-P Takker
Vi tilbyder markedets bedste kurser inden for webudvikling