Captcha i problemi sa prikazom

Captcha i problemi sa prikazom

offline
  • Pridružio: 20 Dec 2004
  • Poruke: 2887
  • Gde živiš: Na Balkanu

Danas sam pokušao da napravim visual confirmation (captcha) za mail formu na svom sajtu, jer sam jutros naišao na gomilu mailova koje mi je poslao bot upravo preko te forme.
Ukratko naišao sam na jedan tutorijal i sve sam pratio, napravio i sve radi kao zaseban fajl, slika sa tekstom se uredno prikazuje.

Međutim, problem nastaje kad taj kod hoću da integrišem u obrazac.
Pokušao sam samo sa copy/paste i da ga uvezem preko funkcije include().
U oba slučaja dobijam sledeću upozorenje

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/pixelweb/public_html/kontakt.php:3) in /home/pixelweb/public_html/captcha.php on line 3 Warning: Cannot modify header information - headers already sent by (output started at /home/pixelweb/public_html/kontakt.php:3) in /home/pixelweb/public_html/captcha.php on line 56

Sama stranica captcha.php ima sledeći kod

<?php //Start the session so we can store what the code actually is. session_start(); //Now lets use md5 to generate a totally random string $md5 = md5(microtime() * mktime()); /* We dont need a 32 character long string so we trim it down to 5 */ $string = substr($md5,0,5); /* Now for the GD stuff, for ease of use lets create  the image from a background image. */ $captcha = imagecreatefrompng("captcha.png"); /* Lets set the colours, the colour $line is used to generate lines.  Using a blue misty colours. The colour codes are in RGB */ $black = imagecolorallocate($captcha, 0, 0, 0); $line = imagecolorallocate($captcha,233,239,239); /* Now to make it a little bit harder for any bots to break, assuming they can break it so far. Lets add some lines in (static lines) to attempt to make the bots life a little harder */ imageline($captcha,0,0,39,29,$line); imageline($captcha,40,0,64,29,$line); /* Now for the all important writing of the randomly generated string to the image. */ imagestring($captcha, 20, 20, 20, $string, $black); /* Encrypt and store the key inside of a session */ $_SESSION['key'] = md5($string); /* Output the image */ header("Content-type: image/png"); imagepng($captcha); ?>

Ima li ko ideju gde je problem?



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Pridružio: 23 Mar 2004
  • Poruke: 523

Trebalo je da nam daš kôd svoje strane. Obično ostane koji prazan red ispred "<?php", pa to pravi problem.



offline
  • Blood  Male
  • Ugledni građanin
  • Pridružio: 26 Jul 2003
  • Poruke: 384
  • Gde živiš: Beograd

ili imas neki utf bom...

offline
  • Pridružio: 20 Dec 2004
  • Poruke: 2887
  • Gde živiš: Na Balkanu

@Not now, John

Radi se o običnoj html stranici sa form i nevidim zašto bi prazni redovi pravili problem.

@Blood
Na šta si mislio.

Dopuna: 10 Dec 2006 19:54

probao sam i sa iframe

ako unesem broj smatra ga da nije korektan, ali ako iframe otvorim u zasebnom prozoru i taj broj prepišem sve je OK.

Dopuna: 10 Dec 2006 20:12

Mislim da ovo pravi problem

header("Content-type: image/png");

offline
  • Pridružio: 10 Avg 2006
  • Poruke: 1009
  • Gde živiš: Beograd

Hmmmm , nisam siguran , on za session_start() funkciju prikazuje error ,a ona je pre tog headera .....
Ova druga greshka se pojavljuje zbog errora ispisanog , kada sredish prvu , druga se nece ni pojavljivati .....
Ne mogu sad da gledam kod , ali session_start() mora biti PRE BILO KOG HTML KODA ili echo ili print PHP funkcije .....
Proveri to Smile

offline
  • Pridružio: 20 Dec 2004
  • Poruke: 2887
  • Gde živiš: Na Balkanu

Rešio sam problem.

Celo vreme sam captcha.php posmatrao kao PHP fajl i pokušavao da ga uvezem funkcijom include(), a trebalo ga ja posmatrati kao sliku i koristiti <img> tag.

Ko je trenutno na forumu
 

Ukupno su 1155 korisnika na forumu :: 42 registrovanih, 8 sakrivenih i 1105 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: amaterSRB, Boris90, cenejac111, cuculo, debeli, djboj, DPera, draganca, DragoslavS, esx66, HogarStrashni, Kibice, Kubovac, laki_bb, Litostroton, loon123, maiden6657, MB120mm, mercedesamg, Mercury, Millennium, Milos ZA, milutin134, mrav pesadinac, nuke92, operniki, Pikac-47, proka89, raketaš, Romibrat, studentbgd, Tragač, vathra, Vlad000, Vlada1389, Vladko, vladulns, vukovi, zlaya011, šumar bk2, 1107, 79693