Búsqueda personalizada
 
 
 
 
Agregar imágenes dinámicas en un archivo HTML
   

En un concepto anterior habíamos visto como crear un archivo gráfico en forma dinámica y el envío del mismo al navegador que lo solicitó. Ahora veremos como crear el archivo de la imagen y su posterior incorporación en una página HTML.

Continuaremos con el problema del dígito de verificación, pero ahora lo incorporaremos en un formulario donde el operador debe tipear el número que está viendo. En una tercera página verificaremos si ingresó el mismo valor que se generó en forma aleatoria.

La primera página "pagina1.php" es el formulario: 

<html>
<head>
<title>Problema</title>
</head>
<body>
<form action="pagina3.php" method="post">
Dígitos verificadores:<img src="pagina2.php">
<br>
Ingrese valor:
<input type="text" name="numero">
<br>
<input type="submit" value="Verificar">
</form>
</body>
</html>

Tengamos en cuenta que ésta es la página que se solicita inicialmente. Dentro de esta página, se incorpora una marca img para agregar una imagen a la página, pero la misma no es un archivo estático sino un archivo PHP que genera la imagen:

   Dígito verificador:<img src="pagina2.php">

Tengamos en cuenta que la página que procesa el valor ingresado y el valor generado en forma aleatoria es la tercera página:

   <form action="pagina3.php" method="post">

El segundo archivo "pagina2.php" es la imagen propiamente dicha:

<?php
$ancho=100;
$alto=30;
$imagen=imageCreate($ancho,$alto);
$amarillo=ImageColorAllocate($imagen,255,255,0);
ImageFill($imagen,0,0,$amarillo);
$rojo=ImageColorAllocate($imagen,255,0,0);
$valoraleatorio=rand(100000,999999);
session_start();
$_SESSION['numeroaleatorio']=$valoraleatorio;
ImageString($imagen,5,25,5,$valoraleatorio,$rojo);
for($c=0;$c<=5;$c++)
{
  $x1=rand(0,$ancho);
  $y1=rand(0,$alto);
  $x2=rand(0,$ancho);
  $y2=rand(0,$alto);
  ImageLine($imagen,$x1,$y1,$x2,$y2,$rojo);
}
Header ("Content-type: image/jpeg");
ImageJPEG ($imagen);
ImageDestroy($imagen);
?>

El algoritmo es el mismo visto en un concepto anterior, la única salvedad es que necesitamos almacenar en una variable de sesión, el número aleatorio para poder compararlo en la página que procesa el formulario:

   session_start();
   $_SESSION['numeroaleatorio']=$valoraleatorio;

Por último el tercer archivo "pagina3.php":

<?php
session_start();
?>
<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
if ($_SESSION['numeroaleatorio']==$_REQUEST['numero'])
  echo "Ingresó el valor correcto";
else
  echo "Incorrecto";
?>
</body>
</html>

Lo primero que hacemos es llamar a la función que rescata las variables de sesión:

<?php
session_start();
?>

Disponemos un if para verificar si el valor ingresado en el formulario es el mismo que el valor almacenado en la variable de sesión:

if ($_SESSION['numeroaleatorio']==$_REQUEST['numero'])
  echo "Ingresó el valor correcto";
else
  echo "Incorrecto";
 
 
 
       
       

¿Quienes somos?

Condiciones de uso

Publicidad

Privacidad de la informacion