login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Captcha font (Opgelost)

Offline Ohnoz - 03/06/2008 13:30 (laatste wijziging 04/06/2008 09:36)
Avatar van OhnozNieuw lid

10 antwoorden

Gesponsorde links
Offline Martijn - 03/06/2008 14:06
Avatar van Martijn Crew PHP $font = '/font.ttf'; -> $font = '/aria.ttf';

en een beetje info wat er fout is, of n voorbeeld is wel handig denk k
Offline Ohnoz - 03/06/2008 14:11 (laatste wijziging 04/06/2008 09:36)
Avatar van Ohnoz Nieuw lid
Offline Martijn - 03/06/2008 14:17 (laatste wijziging 03/06/2008 14:29)
Avatar van Martijn Crew PHP dit is de code die ik heb, versimpeld:

  1. $image = imagecreatetruecolor (175, 50); // maakt de image met de groote van 175 breed, en 50 hoog
  2. $backgroundimage = "img/captcha.gif";
  3. $image=imagecreatefromgif($backgroundimage);
  4. $aFont = font1.ttf;
  5. $aCode=$jeCode;
  6. $fontcolor = imagecolorallocate ($image,$rood,$groen,$blauw);
  7.  
  8.  
  9. imagettftext ($image, // image voorbereiden voor de image variabel ($image)
  10. rand (18, 20), // fontgrootte, willekeurig getal laten kiezen tussen de 18 en 20
  11. rand (-20, 20), // draaihoek, willekeur getal laten kiezen tussen de -20 en de 20
  12. $pos[$i], // karakter positie breedte toewijzen, hebben we al voorbereid ($pos[])
  13. rand (30, 20), // karakter positie hoogte, kiezen tussen de 30 en de 20
  14. $fontcolor, // fontkleur toewijzen, hebben we al voorbereid ($fontcolor)
  15. $aFont, // font
  16. $aCode);
  17.  
  18. imagepng ($image, 'captcha.png'); // de .png image aanmaken als captcha.png
  19. imagedestroy ($image); // de handel afronden, en klaar!
Dit script staat origineel hier op sima, die van mij is wat sterker (als ie compleet zou zijn)

Offline Ohnoz - 03/06/2008 14:21 (laatste wijziging 04/06/2008 09:36)
Avatar van Ohnoz Nieuw lid
Offline jelle - 03/06/2008 16:17
Avatar van jelle PHP beginner probeer eens:
  1. <?
  2. $font = './font.ttf';
  3. ?>


Ik had hetzelfde probleem tot ik er ./ van maakte inplaats van /
Offline Ohnoz - 03/06/2008 16:55 (laatste wijziging 04/06/2008 09:36)
Avatar van Ohnoz Nieuw lid
Offline stedem - 03/06/2008 17:00 (laatste wijziging 03/06/2008 18:42)
Avatar van stedem Nieuw lid Eenvoudig en werkende oplossing

Stap 1:
Creeër een code.php pagina

  1. <?
  2. //Altijd eerst een session start.
  3. //de image/jpeg kan je ook verandere naar image/gif en image/png
  4. header ("Content-type: image/jpeg");
  5. //random getal maken.
  6. $randomnr = rand(1000,9999);
  7. //het plaatje waar het getal in moet komen.
  8. $imagepath = "code.jpg";
  9. //het plaatje maken, ook handig om te doen :D
  10. $im = imagecreatefromjpeg($imagepath);
  11. $tc = imagecolorclosest ($im, 176,37,34);
  12. //de getallen 15 0 1 17 zijn de x en de y as of te wel de positie waar het getal komt in het plaatje
  13. imagettftext ($im, 17, 7, 15, 19, $tc, "code.ttf", "$randomnr" );
  14. imagejpeg($im,'',100);
  15. //het plaatje opslaan als $_SESSION['security_code']
  16. $_SESSION['security_code'] = $randomnr;
  17. ?>



Kopieer eender welk ttf font naar je site folder en noem het code.ttf
Maak een mooi plaatje met lijntjes en andere wirwar dingen en noem het code.jpg

Maak een mooie pagina met inlog gegevens + waar je captcha plaatje moet staan zet je <img src="code.php" /> + een veldje <input name="controlcode" type="text" id="pass" size="20" maxlength="4" />

Bij het submitten stuur je dit naar je verificatie pagina vb veri.php

  1. <?php
  2. $logged = "GEBRUIKERSNAAM";
  3. $passed = "PASWOORD";
  4. $login = $_POST["login"];
  5. $pass = $_POST["pass"];
  6. if ($login == $logged) {
  7. if ($pass == $passed){
  8. $_SESSION["login"] = "1";
  9. $_SESSION["naam"] = $login;
  10. if($_SESSION['security_code'] == $_POST['controlcode']){
  11. header("Location: index.php");
  12. } else{
  13. echo"FOUT";
  14. }
  15. }
  16. }
  17. ?>


Klaar is kees  

Citaat:
PieterC Edit: Codetags aub.
Offline Ohnoz - 03/06/2008 17:05 (laatste wijziging 04/06/2008 09:35)
Avatar van Ohnoz Nieuw lid
Offline Koen - 03/06/2008 18:54
Avatar van Koen PHP expert Error graag?
Offline Ohnoz - 03/06/2008 19:56 (laatste wijziging 04/06/2008 09:35)
Avatar van Ohnoz Nieuw lid
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.243s