elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  Generar un número en intervalo de tiempo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Generar un número en intervalo de tiempo  (Leído 5,499 veces)
Cergath


Desconectado Desconectado

Mensajes: 340



Ver Perfil
Generar un número en intervalo de tiempo
« en: 9 Enero 2011, 21:58 pm »

Hola,

Es que justo ahora necesito un codigo (JS o PHP, no importa) pero que me genere un número de 1 a 10 por ejemplo, pero cada cierto periodo de tiempo de forma aleatoria entre 5 a 60 minutos por ejemplo, no siempre que se refresque el navegador, sino cada intervalo de tiempo de 5 a 60 minutos, esto es posible? (sí, pues, dudo que algo sea imposible a estas alturas :xD) pero más bien, ¿como lo hago?, alguno podría ayudarme en esto?

Muchas gracias!. :)


En línea

madpitbull_99
Colaborador
***
Desconectado Desconectado

Mensajes: 1.911



Ver Perfil WWW
Re: Generar un número en intervalo de tiempo
« Respuesta #1 en: 9 Enero 2011, 22:11 pm »

En PHP es la función rand().

Código
  1. <?php
  2. srand ((double) microtime( )*1000000);
  3. $random_number = rand( );
  4. echo "$random_number";
  5. ?>

Documentación: PHP rand()

En el enlace que te he dejado explican varias formas de generar números aleatorios usando rand() y srand().

Si quieres que te genere un numero a partir de un rango, se hace así:

Código
  1. <?php
  2. $empiezo= 1;
  3. $fin= 100;
  4. srand ((double) microtime( )*1000000);
  5. $random_number = rand($empiezo, $fin);
  6. echo "$random_number";
  7. ?>

Eso te generaría un numero aleatorio entre 1 y 100.

Un saludo!


En línea



«Si quieres la paz prepárate para la guerra» Flavius Vegetius

[Taller]Instalación/Configuración y Teoría de Servicios en Red
#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.855



Ver Perfil WWW
Re: Generar un número en intervalo de tiempo
« Respuesta #2 en: 10 Enero 2011, 00:03 am »

Lo unico que se me ocurre es por sessiones,cookies,archivos o base de datos.
un ejemplo con session en php.

Código
  1. <?php
  2.  
  3. function get_rand($sep,$start,$end){
  4. // by [drvy]
  5. $gen = rand($start,$end);
  6. $ses = $gen.':'.time();
  7. if(isset($_SESSION['randnum'])){
  8. $arr = explode(':',$_SESSION['randnum']);
  9. if(($arr[1]+$sep) < time()){
  10. $_SESSION['randnum'] = $ses;
  11. return $gen;
  12. }
  13. } else {
  14. $_SESSION['randnum'] = $ses;
  15. return $gen;
  16. }
  17. return $arr[0];
  18. }
  19.  
  20. // imprimir
  21. print get_rand(10,111,999);
  22.  
  23. ?>
  24.  

En este caso imprimirá un numero aleatorio cada 10 segundos. Si no han pasado los 10 segundos imprimirá el mismo de antes.
los parámetros de la función son:
$sep = Separador. Osease cada cuanto tiempo. Es en segundos por lo tanto si quieres un numero nuevo cada 1 minuto sera 60.
$start = Numero por cual empezar.
$end = Numero por el que terminar.

Lo que hace es comprobar que la session existe de ahí comprobar hace cuanto fue generado y si hace falta generar uno nuevo. En caso contrario mostrar el ultimo.


Saludos




En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines