Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]proste captcha
michat34
post
Post #1





Grupa: Zarejestrowani
Postów: 200
Pomógł: 1
Dołączył: 4.08.2012

Ostrzeżenie: (10%)
X----


witam znalazlem taki skrypt na tworzenie prostej captchy:

  1. <?php
  2. header("Content-type: image/png");
  3. $string = "abcdefghijklmnopqrstuvwxyz0123456789";
  4. for($i=0;$i<6;$i++){
  5. $pozycja_znaku = rand(0,strlen($string));
  6. $6_znakow .= $string{$pozycja_znaku};
  7. }
  8.  
  9. $obrazek = ImageCreate(60, 20);
  10. //255, 255, 255 - czyli kolor bialy
  11. $kolor_tla = ImageColorAllocate($obrazek, 255, 255, 255);
  12. //0, 0, 0 - czyli kolor czarny
  13. $kolor_tekstu = ImageColorAllocate($obrazek, 0, 0, 0);
  14. ImageString($obrazek, 32, 5, 0, $6_znakow, $kolor_tekstu);
  15. Imagepng($obrazek);
  16.  
  17. $_SESSION['captcha'] = $6_znakow;
  18. ?>


sam w sobie działa. skrypt nazywa sie captcha.php

no i dajmy ze chce go wstawic do rejestracja.php. gdy dam require('captcha.php') to na calej stronei jest tylko obrazek captchy i nic wiecej. wiec jak wstawic ta captche tylko w jakies miejsce a w pozostałej czesci strony byłaby normalna strona?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Spawnm
post
Post #2





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




<img src="captcha.php" />
Go to the top of the page
+Quote Post
michat34
post
Post #3





Grupa: Zarejestrowani
Postów: 200
Pomógł: 1
Dołączył: 4.08.2012

Ostrzeżenie: (10%)
X----


fakt, dzieki. teraz mam jednak problem. zeby sprawdzic dzialanie dolaczylem do indexu plik captcha.php a po nim dałem echo $_SESSION['captcha']. kod z obrazku nie zgadza sie z SESSION..

przykladowo:
kod na obrazku: 18die wynik echo $_SESSION['captcha']: s9hn90
potem:
kod na obrazku: r2490 a wynik echo: 18die

czyli o jedno za pozno pokazuje echo.

Ten post edytował michat34 1.11.2012, 17:53:12
Go to the top of the page
+Quote Post
Spawnm
post
Post #4





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Po co dołączyłeś ten plik do indexu? To jest zdalny plik tylko do wyświetlania w <img>
W index daj session_start i porównywanie $_SESSION['captcha'] z $_POST.
Go to the top of the page
+Quote Post
Spawnm
post
Post #5





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Dziala poprawnie :-)
Bo najpierw wyswietlasz sesje a potem przeglodarka includuje do img captcha.php ktora ustala nowa wartosc.
Jak dasz forma to bedzie dzialac poprawnie.
Go to the top of the page
+Quote Post
michat34
post
Post #6





Grupa: Zarejestrowani
Postów: 200
Pomógł: 1
Dołączył: 4.08.2012

Ostrzeżenie: (10%)
X----


hehe fakt (IMG:style_emoticons/default/wink.gif) dziekuje
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 18:07