Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   PHP (http://www.forosdelweb.com/f18/)
-   -   APORTE: Sistema de Captcha (http://www.forosdelweb.com/f18/aporte-sistema-captcha-570642/)

okram 30/04/2008 21:53

Re: APORTE: Sistema de Captcha
 
@paulkees, en esencia es lo mismo. El código sencillo que realiza la comprobación es:

Código PHP:

# Comprobación Captcha

    # Inclusión del script (Es necesario)
    
include 'PHPCaptcha.lib.php'

    if(
Captcha::verificaCaptcha($_POST['captcha'])) { 
        echo 
"Captcha correcto"
    } else { 
        echo 
"Captcha incorrecto"
    }

# Fin Comprobación Captcha 

Ese trozo de código lo pegas dentro de tu if:

Código PHP:

if (isset($_POST["apellido"])) { 

@nicolaspar, muchas gracias. Me daré un tiempito para darme una vuelta por el foro cuando se estabilicen un poco mis horarios en la universidad. Hasta ahora, sin complicaciones ;-)

Saludos, :adios:

paulkees 01/05/2008 17:48

Re: APORTE: Sistema de Captcha
 
Hola nuevamente okram...

Gracias por seguir ayudándome.

Bueno, he colocado la comprobación como me indicaste en el archivo registro.php pero me da continuamente "captcha incorrecto", como si no estaría haciendo la verificación.

Para esto coloqué en mi php.ini "display_errors = On" y me tira Notice: Undefined index: phpcaptcha_codigo in C:\... \PHPCaptcha.lib.php on line 70

La linea 70 corresponde a:
$sc = ($mayus == true) ? $_SESSION['phpcaptcha_codigo'] : strtolower($_SESSION['phpcaptcha_codigo']);

La verdad que no se si eso quiere decir algo con respecto a la comprobación.

Saludos.-

Primera parte del archivo registro.php donde coloqué la comprobación del captcha
Código PHP:

<?php
session_start
();
//datos para establecer la conexion con la base de mysql.
$conexion=mysql_connect('localhost','usuario','contraseña')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('BD')or die ('Error al seleccionar la Base de Datos: '.mysql_error());


//añadimos la funcion que se encargara de generar un numero aleatorio
function genera_random($longitud){
    
$exp_reg="[^A-Z0-9]";
    return 
substr(eregi_replace($exp_reg""md5(rand())) .
       
eregi_replace($exp_reg""md5(rand())) .
       
eregi_replace($exp_reg""md5(rand())),
       
0$longitud);
}


function 
formRegistro(){
?>


<?php
}

// verificamos si se han enviado ya las variables necesarias, las que tenemos en nuestro form cambialo, como sea el tuyo.
if (isset($_POST["apellido"])) {


    
# Comprobación Captcha

    # Inclusión del script (Es necesario)
    
include 'PHPCaptcha.lib.php';

    if(
Captcha::verificaCaptcha($_POST['captcha'])) {
        echo 
"Captcha correcto";
    } else {
        echo 
"Captcha incorrecto";
    }

    
# Fin Comprobación Captcha


    
$apellido $_POST["apellido"];
    
$nombre $_POST["nombre"];
    
$email $_POST["email"];
    echo 
"<div style='text-align:center;font-weight:bold;font-size:200%;color:#005784;margin-top:200px;'>";
    echo 
"<span>$apellido </span>";
    echo 
$nombre;
    echo 
"</div>";
    
// Hay campos en blanco
    
if($apellido==NULL|$nombre==NULL|$nacimiento==NULL|$residencia==NULL|$provincia==NULL|$email==NULL|$investiga==NULL) {
        echo 
"<div style='font-size:250%;text-align:center;font-weight:bold;color:#B40404;'>Algún campo obligatorio está vacio!</div>";
        
formRegistro();
    }else{
            
// Comprobamos si el nombre de usuario o la cuenta de correo ya existían
            
$checkemail mysql_query("SELECT email FROM gerrusarg WHERE email='$email'");
            
$email_exist mysql_num_rows($checkemail);
            if (
$email_exist>0) {
                echo 
"<div style='font-size:130%;text-align:center;font-weight:bold;color:#B40404;'>La cuenta de correo <span style='color:blue;'>$email</span> ya está en uso.</div>";
                
formRegistro();
        }else{

                  
//agregamos la variable $activate que es un numero aleatorio de
                  //20 digitos crado con la funcion genera_random de mas arriba

                  
$activate genera_random(20);

                  
//aqui es donde insertamos los nuevos valosres en la BD  activate y el valor 1 que es desactivado

                
$query 'INSERT INTO gerrusarg (apellido, nombre, nacimiento, residencia, provincia, email, web, investiga, argentina, rusia, activate, estado)
                VALUES (\''
.$apellido.'\',\''.$nombre.'\',\''.$nacimiento.'\',\''.$residencia.'\',\''.$provincia.'\',\''.$email.'\',\''.$web.'\',\''.$investiga.'\',\''.$argentina.'\',\''.$rusia.'\',\''.$activate.'\', 1)';
                
mysql_query($query) or die(mysql_error());


juanfuentes 29/05/2008 09:36

Respuesta: APORTE: Sistema de Captcha
 
¿Qué ha pasado con la web?

Me iba a bajar el PHPCaptcha de la dirección indicada (http://www.phperu.net/phpcaptcha/) pero me redirecciona a otro blog !!

okram 30/05/2008 20:17

Respuesta: APORTE: Sistema de Captcha
 
Debe haber sido un problema con el servidor. De cualquier manera, el sitio está nuevamente activo ;-)

:adios:

juanfuentes 31/05/2008 06:48

Respuesta: APORTE: Sistema de Captcha
 
Perfecto. Gracias :)

Ya me lo he bajado ;)

Matutevalia 07/06/2008 21:32

Respuesta: APORTE: Sistema de Captcha
 
Alguien lo tiene completo, con las imagenes y fondos? El archivo que los contiene no se puede bajar desde la web http://www.webbia.net/post-phpcaptcha-sistema-de-captcha
Muchas gracias

payo22 13/06/2008 09:40

Respuesta: APORTE: Sistema de Captcha
 
descargo los fondos y fonts, pero no puedo descomprimirlos, dice que el archivo es corrupto, alguien podria pasarmelo

gracias

the_web_saint 31/12/2008 10:30

Respuesta: APORTE: Sistema de Captcha
 
Porque no publican el código completo aquí, no puedo bajarlo de la web, me aparece:

If showed, phpcaptcha is now okay

Saludos

okram 31/12/2008 11:05

Respuesta: APORTE: Sistema de Captcha
 
Hola the_web_saint, lamentablemente este proyecto está descontinuado por ya largo tiempo, y ya no hay planes de recuperarlo. Necesita una reestructuración total, pues su implementación es muy defectuosa y su comportamiento es bastante impredecible. Además, el uso de técnicas como los captchas para evitar el spam ya es algo obsoleto, y cada vez se usa menos estas herramientas.

De cualquier manera el tutorial del script y los archivos que lo componen los puedes descargar de http://phperu.net/captcha.

Saludos, :adios:

jam1138 31/12/2008 17:15

Respuesta: APORTE: Sistema de Captcha
 
A petición de okram, queda cerrado el tema.

:adios:


La zona horaria es GMT -6. Ahora son las 12:14.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.