Foros del Web » Programando para Internet » PHP »

captcha

Estas en el tema de captcha en el foro de PHP en Foros del Web. buenos días, trato de configurar php para poder utilizar un modulo captcha pero no lo consigo. (utilizo windows web server 2008, y PHP Version 5.2.5) ...
  #1 (permalink)  
Antiguo 11/05/2010, 04:39
 
Fecha de Ingreso: julio-2002
Mensajes: 813
Antigüedad: 16 años, 10 meses
Puntos: 2
captcha

buenos días,

trato de configurar php para poder utilizar un modulo captcha pero no lo consigo.

(utilizo windows web server 2008, y PHP Version 5.2.5)

he habilitado
extension=php_gd2.dll

no hay nada mas configurado en el bloque [gd]

lo que muestra phpinfo(); para [gd]

GD Support enabled
GD Version bundled (2.0.34 compatible)
FreeType Support enabled
FreeType Linkage with freetype
FreeType Version 2.1.9
T1Lib Support enabled
GIF Read Support enabled
GIF Create Support enabled
JPG Support enabled
PNG Support enabled
WBMP Support enabled
XBM Support enabled

el archivo php de generación del captcha:

<?php

session_start();
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");

function _generateRandom($length=6){
$_rand_src = array(
array(48,57) //digits
, array(97,122) //lowercase chars
// , array(65,90) //uppercase chars
);
srand ((double) microtime() * 1000000);
$random_string = "";
for($i=0;$i<$length;$i++){
$i1=rand(0,sizeof($_rand_src)-1);
$random_string .= chr(rand($_rand_src[$i1][0],$_rand_src[$i1][1]));
}
return $random_string;
}

$im = imagecreatefromjpeg("captcha.jpg");

$rand1 = _generateRandom(6);
ImageString($im, 5, 2, 2, $rand1, ImageColorAllocate ($im, 0, 0, 0));
$_SESSION['co9k383'] = $rand1;
/*
$rand1 = _generateRandom(3);
ImageString($im, 5, 2, 2, $rand1[0]." ".$rand1[1]." ".$rand1[2]." ", ImageColorAllocate ($im, 0, 0, 0));
$rand2 = _generateRandom(3);
ImageString($im, 5, 2, 2, " ".$rand2[0]." ".$rand2[1]." ".$rand2[2], ImageColorAllocate ($im, 255, 0, 0));
$_SESSION['captcha'] = $rand1.$rand2;
*/
Header ('Content-type: image/jpeg');
imagejpeg($im,null,100);
ImageDestroy($im);
?>

un saludo,
josé carlos.

Última edición por evoarte; 11/05/2010 a las 04:45
  #2 (permalink)  
Antiguo 11/05/2010, 08:55
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años
Puntos: 2132
Respuesta: captcha

Cual es el problema?
  #3 (permalink)  
Antiguo 11/05/2010, 09:22
 
Fecha de Ingreso: julio-2002
Mensajes: 813
Antigüedad: 16 años, 10 meses
Puntos: 2
Respuesta: captcha

hola,

la imagen no se muestra
  #4 (permalink)  
Antiguo 11/05/2010, 10:39
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años
Puntos: 2132
Tema movido desde Configuración PHP a PHP

Comenta la linea del header() eso envia el contenido de tu script como texto y puedes verificar que mensajes de error si hay se imprimen.

Saludos.
  #5 (permalink)  
Antiguo 12/05/2010, 04:48
 
Fecha de Ingreso: julio-2002
Mensajes: 813
Antigüedad: 16 años, 10 meses
Puntos: 2
Respuesta: captcha

he sacado todo el código captcha para ver su comportamiento individualmente, y
he eliminado los errores personalizados, y me encuentro esto:

Warning: session_start() [function.session-start]: open(./tmp\sess_ivarhreu57gbb8nopll1orqec5, O_RDWR) failed: No such file or directory (2) in C:\www\dominio\captcha_demo.php on line 1

Warning: Unknown: open(./tmp\sess_ivarhreu57gbb8nopll1orqec5, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (./tmp) in Unknown on line 0

el directorio /tmp está definido así en php.ini, y naturalmente está creado en la carpeta c:/php5213/tmp:

session.save_path = "./tmp"

que mas hay que tener en cuenta?

un saludo,
José Carlos.
  #6 (permalink)  
Antiguo 12/05/2010, 08:37
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años
Puntos: 2132
Respuesta: captcha

./tmp es diferente a C:/php5213/tmp.

Saludos.
  #7 (permalink)  
Antiguo 12/05/2010, 09:09
 
Fecha de Ingreso: julio-2002
Mensajes: 813
Antigüedad: 16 años, 10 meses
Puntos: 2
Respuesta: captcha

si, gracias, ya lo había corregido,

un saludo,
josé carlos.

Etiquetas: captcha
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 08:25.