Criando um sistema de Captcha

Existem varias formas de se fazer isso, algumas formas tiveram problema acredito por causa da biblioteca GD, se vc não as tem instaladas.


Criando um sistema de Captcha

Existem varias formas de se fazer isso, algumas formas tiveram problema acredito por causa da biblioteca GD, se vc não as tem instaladas.

su
emerge php5-gd

O código abaixo está todo comentado para causar o entendimento.

<?php

//INICIAR A SESSION
session_start();

//INICIAR O HEADER
header('Content-Type: image/png');

//puxar a imagem, vc deve ter essa imagem na pasta, pois ela servirá de base.
$image = imagecreatefrompng("captcha.jpg") or die ("Não foi possível iniciar a imagem.");

//carregar a fonte, tem de ser no formato gdf, neste caso, google-a
$fonte  = imageloadfont("anonymous.gdf");

//quantidade de caracteres, shuffle para embaralhar e 4 caracteres somente q eu escolhi
$texto  = substr(str_shuffle("AaBbCcDdEeFfGgHhIiJjKkLlMmNnPpQqRrSsTtUuVvYyXxWwZz23456789"),0,4);

//salvar a session
$_SESSION['capcad'] = $texto;

//indicar a cor da fonte
$cor = imagecolorallocate($image,0,0,0);

//junção da imagem com o texto, os numeros referenciam a posição da imagem
imagestring($image, $fonte, 50, 10, $texto, $cor);

//mostrar imagem
imagepng($image);

//liberar memória
imagedestroy($image);
?>

Valeu!


php


Compartilhe


Nosso canal no Youtube

Inscreva-se


Marcos Oliveira

Marcos Oliveira

Desenvolvedor de software
https://github.com/terroo


Crie Aplicativos Gráficos para Linux e Windows com C++

Aprenda C++ Moderno e crie Games, Programas CLI, GUI e TUI de forma fácil.

Saiba Mais

Receba as novidades no seu e-mail!

Após cadastro e confirmação do e-mail, enviaremos semanalmente resumos e também sempre que houver novidades por aqui para que você mantenha-se atualizado!