Foros del Web » Programando para Internet » PHP »

numeros aleatorios en php

Estas en el tema de numeros aleatorios en php en el foro de PHP en Foros del Web. Saludos a todos Estoy tratando de obtener un numero aleatorio. El problema es que me genera siempre el mismo numero a lo largo de toda ...
  #1 (permalink)  
Antiguo 29/12/2004, 05:12
 
Fecha de Ingreso: agosto-2004
Mensajes: 312
Antigüedad: 19 años, 8 meses
Puntos: 0
numeros aleatorios en php

Saludos a todos

Estoy tratando de obtener un numero aleatorio. El problema es que me genera siempre el mismo numero a lo largo de toda la sesion.

Utilizo la funcion rand para obtener ese numero ( rand(1,10);) pero si vuelvo a llamar al script a lo largo de la sesion q tengo el navegador abierto me vuelve a generar el mismo numero. He pensado q a lo mejor era casualidad pero lo he probado varias veces y se me repite el numero.

Tambien he probado con la funcion srand pero me hace lo mismo

Sin embargo si cierro el navegador y abro una nueva sesion si q me genera un nuevo valor. Debo utilizar algo antes llamar a la funcion rand()? Me suena q si pero he mirado en la pagina oficial de php y no dice nada

Gracias por adelantado
  #2 (permalink)  
Antiguo 29/12/2004, 05:14
 
Fecha de Ingreso: septiembre-2004
Ubicación: Viviendo en Manresa(Barcelona)
Mensajes: 230
Antigüedad: 19 años, 6 meses
Puntos: 0
Puede que tengas que actualizar la variable de session, no se.. Tampoco veo el codigo, que sria una buena ayuda :P
  #3 (permalink)  
Antiguo 29/12/2004, 09:06
 
Fecha de Ingreso: agosto-2004
Mensajes: 312
Antigüedad: 19 años, 8 meses
Puntos: 0
no lo pongo en ninguna variable de sesion. Cuando decia sesion me referia a la sesion del navegador. Arranco el navegador y mientras me mueva por mi sitio web no me cambia el valor que obtiene rand.

El codigo es bastante senciloo

$var=rand(1,10); Lo q pasa es q $var vale siempre lo mismo cuando se supone q deberia variar, un valor entre 1 y 10 cada vez q llame al scrit no?

Gracias por la ayuda
  #4 (permalink)  
Antiguo 29/12/2004, 09:53
 
Fecha de Ingreso: diciembre-2004
Mensajes: 8
Antigüedad: 19 años, 4 meses
Puntos: 0
en ves de rand prueba usar mt_rand y fijate que sucede pero es muy raro que siempre aparezca el mismo numero.
  #5 (permalink)  
Antiguo 29/12/2004, 10:10
 
Fecha de Ingreso: agosto-2004
Mensajes: 312
Antigüedad: 19 años, 8 meses
Puntos: 0
tambien lo he probado y nada. Me sigue haciendo lo mismo

Intentare buscar otra solucion.

Gracias a todos por la ayuda
  #6 (permalink)  
Antiguo 30/12/2004, 10:43
 
Fecha de Ingreso: agosto-2004
Mensajes: 312
Antigüedad: 19 años, 8 meses
Puntos: 0
Ya esta solucionado.
Parece que era problema del servidor q no actualizaba bien las paginas o que se yo. Ahora funcioan perfectamente sin haber tenido q cambiar una sola linea de codigo.

Gracias a todos por la ayuda
  #7 (permalink)  
Antiguo 30/12/2004, 10:49
Avatar de Vice  
Fecha de Ingreso: agosto-2003
Mensajes: 613
Antigüedad: 20 años, 8 meses
Puntos: 2
Para evitarte esos problemas, lo mejor es poner antes de generar el primer número aleatorio, la generación de una semilla por medio de la función mt_srand.
Un saludo.
__________________
Estoy contagiado de Generación-I
  #8 (permalink)  
Antiguo 13/01/2010, 02:01
 
Fecha de Ingreso: octubre-2006
Ubicación: Ciudad Ojeda, Venezuela
Mensajes: 123
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: numeros aleatorios en php

no se si esto se sirva da números y letras aleatorios:

Código PHP:
<?php
function randomAlpha() {
   
srand(time());
   
$rnd rand(0,1000);
   return 
$rnd/1000;
}
function 
randomColor() {
    
srand(time());
    
$color "";
    for (
$i=0$i<12$i++){
        
$color .=  dechex(rand(0,15));
    }
    return 
"LPV".$color;

$rndcolor randomColor();
?>
para imprimir:

Código PHP:
<?php echo "$rndcolor";?>
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 14:53.