Avatar billede klovnefisken Nybegynder
06. februar 2010 - 16:17 Der er 6 kommentarer og
1 løsning

images on the fly

hej
jeg vil være taknemlig hvis der er en der kan hjælpe mig med at få et billed jeg har frembragt ved brug af PHP-GD

jeg har bygget et html dokument
med ed del div (css)
og jeg vil gerne have billedet vis i et af de div

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>mobil fun</title>
<link href="media/240.css" rel="stylesheet" type="text/css" />
</head>

<body>
  <div id="container">
        <div id="top">
        </div>
          <div id="menu">
        HER VIL JEG GERNE HAVE VIST DE KNAPPER
        lavknap($link) // koden er lavet kort, for $link kommer fra en database for at vise alle link
        </div>
        <div id="main">
        </div>
  </div>
</body>

function linkknap($linknavn)
{
    $billed=imagecreatefromjpeg("images/knapper/link-a.jpg");
    $red=imagecolorallocate($billed,255,0,0);
    $caption=$linknavn;
    $fontwidth=imagefontwidth(2);
    $txtwidth=strlen($caption)*$fontwidth;
    $text=((78-$txtwidth)/2);
    imagestring($billed,3,$text,17,$caption,$red);
    header("Content-type: image/jpeg");
    imagejpeg($billed);
}
?>

jeg tror det er noget med header et eller andet men kan ikke finde løsningen nogen steder
På forhånd tak
Bruno
Avatar billede coderdk Praktikant
06. februar 2010 - 17:37 #1
Du kan ikke blandet det sådan. Du skal lave HTML-referencer til dit billedscript. E.g. hvor du nu har linkknap-funktionskaldet skal der stå:

<img src="link-til-dit-knap-script?parameter=blah">

osv
Avatar billede klovnefisken Nybegynder
06. februar 2010 - 18:26 #2
jeg har nu forsøgt flere ting, uden resultat
er der nogen der se fejlen jeg laver, eller er det ikke mulig at lave det som en funktion, men skal laves som en PHP fil ???

dette er linjen i mit menu.php som er en include fil til index.php



echo"<a href=\"index.php?id=".$rows['id']."\"><img src=\"".lavknap($rows['linknavn'])."\"></a>&nbsp;&nbsp;";

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


function lavknap($linknavn)
{
    $sti="link-a.jpg";
    $sti=findsti($sti);// enfunktion jeg har brugt mange gange til at finde sti til en fil
    $billed=imagecreatefromjpeg($sti."link-a.jpg");
    $red=imagecolorallocate($billed,255,0,0);
    $caption=$linknavn;
    $fontwidth=imagefontwidth(3);
    $txtwidth=strlen($caption)*$fontwidth;
    $text=((78-$txtwidth)/2);
    imagestring($billed,3,$text,17,$caption,$red);
    $billednavn=$sti.$linknavn.".jpg";
    header("Content-type: image/jpeg");
    imagejpeg($billed);
    imagedestroy($billed);
}
Avatar billede coderdk Praktikant
06. februar 2010 - 18:43 #3
Jeg gentager: Du skal splitte det op i to - Du kan ikke bare skrive et binært billede i HTML'en.

Du har dit script hvor knapperne skal være, test.php:


<html>
<head>
<title>mobil fun</title>
</head>
<body>
<img src="knap.php?id=1"><br>
<img src="knap.php?id=2"><br>
</body>
</html>

og dit script, der laver knappen, knap.php, som ligner din nuværende funktion (som outputter et binært billede).
Avatar billede klovnefisken Nybegynder
06. februar 2010 - 18:48 #4
Ja ok nu giver det mere mening
jeg troede jeg kunne lave det som en funktion, på lige fod med mange andre ting jeg har lavet , men som jeg forstår dig skal det laves i en PHP fil for sig selv, så vil jeg lave min kode om til det
og prøve det
Avatar billede coderdk Praktikant
06. februar 2010 - 18:59 #5
Det er korrekt :)
Avatar billede klovnefisken Nybegynder
06. februar 2010 - 20:26 #6
takker nu virker det
Avatar billede coderdk Praktikant
06. februar 2010 - 22:04 #7
Cool :D
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
Kurser inden for grundlæggende programmering

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