Ver Mensaje Individual
  #37 (permalink)  
Antiguo 10/04/2005, 01:30
Avatar de Reynier
Reynier
 
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 22 años
Puntos: 1
Pues mira

Yo he cogido el código que tienes en las FAQ's y he realizado alguna que otra variación. Por ejemplo al fichero donde se encuentra la función para generar la contraseña lo he llamado de otra manera: code_genera.php pero el contenido es el mismo:
code_genera.php
Código PHP:
<?php
 
function genera_password($longitud,$tipo="alfanumerico"){
  if (
$tipo=="alfanumerico"){
   
$exp_reg="[^A-Z0-9]";
  }elseif (
$tipo=="numerico"){
   
$exp_reg="[^0-9]";
  }
  return 
substr(eregi_replace($exp_reg""md5(time())) .
         
eregi_replace($exp_reg""md5(time())) .
         
eregi_replace($exp_reg""md5(time())),
         
0,$longitud);
 }
?>
En el archivo donde genero la imagen he puesto esto:
Código PHP:
<?php
session_start
();
require(
"class/smarty/Smarty.class.php");
include_once(
"language/lang-spanish.php");
include_once(
'class/DB.php');
include (
"code_genera.php");
/* Making code for SECURITY CODE and store it into a SESSION */
$securitycode genera_password(10);
$_SESSION['securitycode'] = $securitycode;
$template->assign("SECURITYCODE","<img src=\"securitycode.php\">");
y mi archivo securitycode.php contiene este código:
Código PHP:
<?php
 session_start
();
 
$codigo $_GET['securitycode'];
 
//$codigo = $_SESSION['securitycode'];
 
$tipografias = array("font1","font2","font3","font4","font5","font6","font7","font8");
 
$tipografias_ruta "D:/WWW/jclub/tipografia/";
 
$espacio 0;
 
$tamano_fuente 14;
 
$profundidad_codigo 8;
 
$x $profundidad_codigo*$tamano_fuente;
 
$y $tamano_fuente;
 
$im imagecreate($x$y);
 
$color_fondo imagecolorallocate($im255255255); // Blanco
 
$color_texto imagecolorallocate($im000); // Negro
 
for($caracter=0$caracter<$profundidad_codigo$caracter++){
  
$indice_aleatorio=array_rand($tipografias);
  
$tipografia=$tipografias_ruta.$tipografias[$indice_aleatorio].'.ttf';
  
imagettftext($im$tamano_fuente0$espacio$tamano_fuente$color_texto$tipografia $codigo{$caracter});
  
$espacio +=$tamano_fuente;
 }
 
header('Content-type: image/png');
 
imagepng($im);
 
imagedestroy($im);
?>
ahora cuando lo llamo normalmente no pone nada. Y si lo llamo de esta forma:
Código PHP:
http://localhost/jclub/securitycode.php?securitycode=123455 
me da este error:
Cita:
Notice: Uninitialized string offset: 6 in D:\WWW\jclub\securitycode.php on line 18

Notice: Uninitialized string offset: 7 in D:\WWW\jclub\securitycode.php on line 18

Warning: Cannot modify header information - headers already sent by (output started at D:\WWW\jclub\securitycode.php:18) in D:\WWW\jclub\securitycode.php on line 21
‰PNG  IHDRpæ…ÉPLTEÿÿÿßßߟŸŸ___???¿¿¿<ž>Ý IDATxœ•’;oÂ@ Ç}—Œ8 1â1RX)c«6c¤ªíšVUçR•ïÍÙj ‡þ–ü|öùÄ|Ä®´+"VÇ_œ £“äŸ*HšLëY]qp4J,`›Ä n±UÏz%€+ :.ZU¨þƒnE`°¼:î2j7 ƒÚª3º[ÀBÜ–Á|WRðSàV#C¨.L,hqïøÍŽuFýyC!±€/â2$õšÒÁ°+E±Cgåý¹a€ÏäE.Uhƒz*i¹zæ´m*rR›_CYÕÏç üØC9*? Ò®#®ðÆÉ)Ó&);Šl ¿œ.‘†,ä*k ;X[•·úøJÃm8j¦0¥ ‹Ójä. ùÄ bIEND®B`‚
QUe estoy haciendo mal?
Salu2
__________________
Ing. Reynier Pérez Mira