PHP - Numero Aleatorio en PHP

 
Vista:
Imágen de perfil de humberto

Numero Aleatorio en PHP

Publicado por humberto (42 intervenciones) el 23/01/2014 19:30:04
Buenas camaradas, tengo una duda como muestro un numero aleatorio en una caja de texto, que al hacer click en un boton llame a la funcion GenerarNumero y el valor me lo muestre en la caje de texto. gracias ante mano....

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<form name="form1" id="form1"  method="post" >
 
           <input type="text" name="expediente"  id="Numero" value="<?php $pass; ?>"/>
            <br> <br>
            <input type='submit' value='generar numero' name="eliminar">
 
 
            </form>
 
<?php
 
if(isset($_POST['eliminar']))
{
		$cadena = "1234567890";
		//Obtenemos la longitud de la cadena de caracteres
		$longitudCadena=strlen($cadena);
 
		//Se define la variable que va a contener la contraseña
		$pass = "";
		//Se define la longitud de la contraseña, en mi caso 10, pero puedes poner la longitud que quieras
		$longitudPass=3;
 
		//Creamos la contraseña
		for($i=1 ; $i<=$longitudPass ; $i++)
		{
			//Definimos numero aleatorio entre 0 y la longitud de la cadena de caracteres-1
			$pos=rand(0,$longitudCadena-1);
 
			//Vamos formando la contraseña en cada iteraccion del bucle, añadiendo a la cadena $pass la letra correspondiente a la  posicion $pos en la cadena de caracteres definida.
			$pass .= substr($cadena,$pos,1);
		}
echo "$pass";
 
	}
?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de humberto

Numero Aleatorio en PHP

Publicado por humberto (42 intervenciones) el 23/01/2014 23:15:36
NO me sirve camarada, la variable $pass que esta en el codigo PHP contiene un valor, que es un numero aleatorio, yo quiero que ese valor se muestre en el campo texto cuando yo le de click al boton. me explique bien...necesito resolver eso con urgencia. xfavor. Graciar xx ayudarme...

<input type="text" name="expediente" id="Numero" value="<?php $pass; ?>"/>

yo llamo el valor de php pero no me aparece nada en el campo de texto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Numero Aleatorio en PHP

Publicado por xve (6935 intervenciones) el 24/01/2014 07:35:07
Hola Humberto, te pido perdon, lo entendi mal...

Para que te aparezca te falta poner echo... algo así:
1
<input type="text" name="expediente" id="Numero" value="<?php echo $pass; ?>"/>

Entiendo que el código php del ejemplo que nos has mandado se ejecuta antes que el código html verdad?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Numero Aleatorio en PHP

Publicado por victorgspx (3 intervenciones) el 25/01/2014 09:04:14
Hola,

Puedes armar el código HTML en una variable en PHP, así puedes integrar el contenido del resultado del password y después mostrar el código.

Por otro lado, al generar un número aleatorio, dígito por dígito, sería equivalente a buscar un número aleatorio entre cero y 10^(longitud) - 1, es decir, para obtener un número aleatorio entre cero y 999, simplemente se utiliza;

$pass = rand( 0 , pow(10,$longitudPass) - 1 )

Si lo que quieres es que se rellene con ceros a la izquierda, para asegurar que el password siempre tenga la misma longitud, se agrega el formato con sprintf

sprintf('%0'.$longitudPass.'s',$pass);

Así el código quedaría:

<?php
$longitudPass = 5;
$pass = rand(0, pow(10,$longitudPass) - 1);
$pass = sprintf('%0'.$longitudPass.'s',$pass);
$vHtml = '
<form name="form1" id="form1" method="POST">
<input type="text" name="Numero" id="Numero" value="'.$pass.'"/>
<br><br>
<input type="submit" value="generar numero" name="eliminar">
</form>';

echo $vHtml;

?>

O bien:

<form name="form1" id="form1" method="POST">
<input type="text" name="Numero" id="Numero" value="<?php
$longitudPass = 5;
$pass = rand(0, pow(10,$longitudPass) - 1);
$pass = sprintf('%0'.$longitudPass.'s',$pass);
echo $pass;?>"
/>
<br><br>
<input type="submit" value="generar numero" name="eliminar">
</form>'
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar