Foros del Web » Programando para Internet » PHP »

captcha no funciona

Estas en el tema de captcha no funciona en el foro de PHP en Foros del Web. Buen dia a todos. Tengo un captcha que funciona muy bien en IE y Chrome pero... NO FUNCIONA en Firefox... ¿Alguien puede darme un tip? ...
  #1 (permalink)  
Antiguo 08/01/2013, 11:30
 
Fecha de Ingreso: septiembre-2009
Mensajes: 56
Antigüedad: 14 años, 7 meses
Puntos: 0
captcha no funciona

Buen dia a todos.

Tengo un captcha que funciona muy bien en IE y Chrome pero...
NO FUNCIONA en Firefox...
¿Alguien puede darme un tip?

Dejo los codigos.

login.php

Código HTML:
<?php
session_start();
?>
<html>
<head> </head>
<body>

<form name="Form1" method="post" action="cerradura.php" id="Form1" onsubmit="return ValidateForm1(this)">

Usuario: <input type="text" id="Editbox1" name="usuario" value="" maxlength="12" tabindex="10">

Password: <input type="password" id="Editbox2" name="password" value="" maxlength="12" tabindex="20">


Captcha: <div id="wb_Captcha1">
<img src="captcha1.php" id="Captcha1Imagen" alt="Click para generar nuevos caracteres" title="Click para generar nuevos caracteres" style="cursor:pointer;width:100px;height:38px;" onclick="this.src='captcha1.php?'+Math.random()">

<input type="text" id="Captcha1Edit"  name="captcha_code" value="" tabindex="30" onkeyup="this.value=this.value.toUpperCase()">
</div>


<div id="wb_ImageCaptcha" style="overflow:hidden;position:absolute;left:58px;top:145px" align="left">
<a onclick=" document.getElementById('Captcha1Imagen').src = document.getElementById('Captcha1Imagen').src + '?' + (new Date()).getMilliseconds()" href="#A">
<img src="images/img0052.png" id="Text4" alt="" border="0" 
style="width:138px;height:32px;border:0px #000000 solid;">
</div>

<input type="submit" id="Button1" name="" value="Login"  tabindex="40">

</form>

</body>
</html> 
captcha1.php
Código PHP:
    $ancho=90;
  
$alto=25;
  
$imagen=imageCreate($ancho,$alto);
  
$gris=ImageColorAllocate($imagen,180,180,180);
  
ImageFill($imagen,0,0,$gris);
  
$azul=ImageColorAllocate($imagen,50,50,255);
  
$amarillo ImageColorAllocate($imagen,225,225,0);
  
$verde ImageColorAllocate($imagen,50,255,50);
  
$rosa ImageColorAllocate($imagen,255,190,255);

  for(
$c=1;$c<=10;$c++)
  {
    
$x1=rand(0,$ancho);
    
$y1=rand(0,$alto);
    
$x2=rand(0,$ancho);
    
$y2=rand(0,$alto);
    
ImageLine($imagen,$x1,$y1,$x2,$y2,$amarillo);
    
$x1=rand(0,$ancho);
    
$y1=rand(0,$alto);
    
$x2=rand(0,$ancho);
    
$y2=rand(0,$alto);
    
ImageLine($imagen,$x1,$y1,$x2,$y2,$verde);
    
$x1=rand(0,$ancho);
    
$y1=rand(0,$alto);
    
$x2=rand(0,$ancho);
    
$y2=rand(0,$alto);
    
ImageLine($imagen,$x1,$y1,$x2,$y2,$rosa);
  }  
  
  
$valoraleatorio "";                 
   
$chars    'ABCDEFGHKMNPQRTUVWXYZ2346789';

for (
$i=1$i<=5$i++) // generara 5 caracteres
{
$valoraleatorio .= $chars[mt_rand(0strlen($chars)-1)];
}
  
  
session_start();
  
$_SESSION['numeroaleatorio']=$valoraleatorio;
  
ImageString($imagen,5,25,5,$valoraleatorio,$azul);

  
  
Header ("Content-type: image/jpeg");
  
ImageJPEG ($imagen);
  
ImageDestroy($imagen); 
cerradura.php
Código PHP:
session_start();
$captcha $_SESSION['numeroaleatorio'];

/***VARIABLES POR POST ***/

$numeroPost count($_POST);
$tagsPost array_keys($_POST); // obtiene los nombres de las varibles
$valoresPost array_values($_POST);// obtiene los valores de las varibles


// crea las variables y les asigna el valor
for($i=0;$i<$numeroPost;$i++){ 
$
$tagsPost[$i]=$valoresPost[$i]; 
}

/*
ahora solo hay que llamar las variables por su nombre
en vez de usar $_POST['usuario'] y $_POST['password'], llamar a las variables
$usuario
$password
$captcha_code
*/


if ($captcha != $captcha_code//comparar el captcha tecleado por el usuario vs el generado automaticamente
    
{  // OJO:  SIEMPRE PASA POR ESTE IF (SOLO EN FIREFOX), Y POR LO TANTO 
            // LO REGRESA A login.php
    
$_SESSION['permisoCerradura']=0;
    
$_SESSION['errorLogin']=4;
    
header ("Location: login.php"); 
    } 

else  
// NUNCA PASA POR ESTE ELSE EN FIREFOX, PERO SI EN IE Y EN CHROME
    
{
    
header ("Location: menu.php");
    } 
La verdad estoy DESCONCERTADO porque sólo ocurre en Firefox. ¿Alguien tiene alguna idea de lo que pueda estar pasando?

Gracias de antemano y excelente Karma para ti.

Etiquetas: captcha, html, variables, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:08.