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());