[ vlajco @ 08.09.2005. 15:26 ] @
Moze li neko da mi pomogne. Treba da generisem tekst koji korisnik unese u sliku.
Postoje dva fajla: jedan .html a drugi .php

.html fajla:

Code:

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<table width="289" border="0" cellpadding="0" cellspacing="0">
  <!--DWLayoutTable-->
  <tr>
    <td width="289" height="291" valign="top"><img src="velika_majca.jpg" name="slika_majce" width="270" height="277" id="slika_majce"></td>
  </tr>
  <tr>
    <td height="73" valign="top"><form name="form1" method="post" action="slika.php">
      <p>
        <input name="text" type="text" id="text">
</p>
      <p>
        <input type="submit" name="Submit" value="Posalji">  
          </p>
    </form></td>
  </tr>
</table>
</body>
</html>



.php fajl

Code:


<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<?php
## ovdje definisemo nase varijable
$slika_majce = "velika_majca.jpg";
$name = "$text";

## kreiramo kopiju slike i ucitavamo je u varijablu $karta
$majca = imagecreatefromjpeg($slika_majce);

## upisujemo varijable na sliku
imagestring($majca,2,61,77,$name,0); 

## saljemo sliku browseru i brisemo je odmah nakon toga
imagejpeg($majca); 
imagedestroy($majca);
?>


</body>
</html>


Ovako napisan kod, kao odgovor dobijam heroglife?!?!?!?

Kako ovo resiti?
[ Br@nkoR @ 08.09.2005. 15:47 ] @
Šalješ različite header.
Nemoj da stavljaš nikakav html kod u php fajl, takođe rasmak ili novi red ispred <?php može da pravi takav problem.
[ vlajco @ 08.09.2005. 18:30 ] @
HVALA!
[ vlajco @ 08.09.2005. 19:19 ] @
Gde je greska sada?

Code:

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>

<table width="309" border="0" cellpadding="0" cellspacing="0">
  <!--DWLayoutTable-->
  <tr>
    <td width="309" height="313" align="center" valign="middle">
    <?php
   $slika_majce = "slike/velika_majca.jpg";
   $tekst = "$text";
   
   $majca = imagecreatefromjpeg($slika_majce);

   imagestring($majca,2,90,77,$tekst,0);
   
   imagejpeg($majca); 
   imagedestroy($majca);
?>&nbsp;</td>
  </tr>
</table>
<form name="form1" method="post" action="indexsrp.php">
  <p>
    <input name="text" type="text" id="text" value="Bilo sta"> 
    <input type="submit" name="Submit" value="Preview">
    <br>
  </p>
  <p>&nbsp;  </p>
</form>
<p>&nbsp;</p>
</body>
</html>



Molim za odgovor!
[ Br@nkoR @ 08.09.2005. 21:03 ] @
Ista greška.
[ Nemanja Avramović @ 08.09.2005. 23:18 ] @
NE SMESH DA IMASH BILO SHTA PRE GENERISANJA SLIKE!!!

Code:
<?php
   $slika_majce = "slike/velika_majca.jpg";
   $tekst = "$text";
   
   $majca = imagecreatefromjpeg($slika_majce);

   imagestring($majca,2,90,77,$tekst,0);
   
   imagejpeg($majca); 
   imagedestroy($majca);
?>


...a ako baš moraš da imaš sliku u tabeli, onda unutar ćelije pozovi <img src='slika.php?parametri'>
[ vlajco @ 09.09.2005. 11:03 ] @
Citat:

NE SMESH DA IMASH BILO SHTA PRE GENERISANJA SLIKE!!!


Ako ovako uradim, posle php coda ne radi nista, znaci samo izvrsi php kod i to je to.

Citat:

...a ako baš moraš da imaš sliku u tabeli, onda unutar ćelije pozovi <img src='slika.php?parametri'>


Ovako umesto slike dobijam samo kvadrat sa crvenom putacom?!

Jel' mogu da dobijem celu liniju koda, za konkretan primer?

[ Nemanja Avramović @ 09.09.2005. 11:29 ] @
nije poslat header... probaj ovako:
Code:
<?php
   $slika_majce = "slike/velika_majca.jpg";
   $tekst = "neki text";
   
   $majca = imagecreatefromjpeg($slika_majce);

   imagestring($majca,2,90,77,$tekst,0);

   header("Content-type: image/jpeg");
   
   imagejpeg($majca); 
   imagedestroy($majca);
?>


[Ovu poruku je menjao JaHvram dana 09.09.2005. u 12:31 GMT+1]
[ vlajco @ 10.09.2005. 06:57 ] @


Nije ni tako uspelo. Isti problem, dobijam samo sliku majce a ne i ostali deo strane.

Slika koju menjam, nalazi se u celiji, na sredini web strane. Posetilac treba da unese tekst koji zeli, izabere font, boju i velicinu slova, i kad klikne na dugme "preview", taj tekst treba da se integrise u sliku. Strana mora izgledati isto kao i pre unosa teksta. Prakticno samo treba da unese tekst u sliku i nista vise. To bi trebala biti jedina promena na strani. Ostali deo strane se ne menja!!!!!!

Ako neko nije razumeo.

U pitanju je sajt stamparije, gde korisnik moze uneti zeljeni tekst i videti kako ce to izgledati posle stampe.
[ pierre @ 10.09.2005. 15:12 ] @
nisam bas pomno pratio, pa se izvinjavam ako promasim temu. ja bih umesto odgovora postavio dva pitanja.

da li si proverio kako ti je kodiran php fajl? vidim - on je u htmlu deklarisan kao iso, ali ako je kao fajl u utf8, mozda ima na pocetku legendarni BOM karakter, koji PHP ne podnosi koliko ja znam. jednostavan nacin da ovo resis je ako imas novi dreamweaver: otvori taj php fajl i iskopiraj sav kod iz njega, potom kreiraj novi fajl, izpejstuj to i snimi ga kao iso ili kao utf8 bez BOMa.

da li si proverio da na serveru imas GD? proveri u phpinfo da li ga imas i ako imas koja je verzija.
[ Nemanja Avramović @ 10.09.2005. 16:06 ] @
moras imati jedan fajl koji generise sliku (dao sam ti gore kod) i jedan poseban fajl koji prikazuje sliku

slika.php
(onaj kod gore)

strana.php
<table> bla bla
<td><img src='slika.php?tekst=Tvoj tekst'></td>
</table>