hola chikos teng ste problema sobre numeros aleatorios
tengo el siguiente codigo para generarlos:
Código PHP:
<?php
include('conexionmacro.php');
$link=Conectarse();
function genera_password($longitud,$tipo="alfanumerico"){
if ($tipo=="numerico"){
$exp_reg="[^0-9]";
}
return substr(eregi_replace($exp_reg, "", md5(rand())) .
eregi_replace($exp_reg, "", md5(rand())) .
eregi_replace($exp_reg, "", md5(rand())),
0, $longitud);
}
do{
$Xgiro = genera_password(4,"numerico");
$aux = $Xgiro;
$Rsngiro1 = mysql_query("select ngiro from giros",$link);
}while(mysql_fetch_array($Rsngiro1)!=$aux);
$giro = $aux;
$RScountcliente = mysql_query("select id_cliente from clientes where id_cliente='$acceso2'",$link);
$fila = mysql_fetch_array($RScountcliente);
mysql_free_result($RScountcliente);
$Xidcli = $fila[0];
$RSinsertcliente = mysql_query("insert into giros values ('$Xidcli','$acceso1','$acceso2','$monto_envio','$cuenta','$observacion','$fecha','$giro','$tipom','$estado','','$tcambio')",$link);
mysql_close($link);
?>
<script>
function Cargar(){
var ng = parseInt(document.frm_datos.giro.value);
alert('Nº de Giro: '+ ng );
document.frm_datos.action="giros_encomiendas.php";
document.frm_datos.submit();
window.open("imprimir.php?giro="+ng,'ventana1','height=700,width=550,resizable=yes,scrollbars=yes');
}
</script>
<body onLoad="Cargar()">
<form action="giros_encomiendas.php" method="post" name="frm_datos">
<input type="hidden" name="txtpais" value="<? echo $txtpais;?>">
<input type="hidden" name="giro" value="<? echo $giro;?>">
</form>
</body>
</html>
ahora cuando yo muestro en un alert el numero aleatorio en momentos me muestra el numero que ha generado y me guarda ese numero a mi bd lo cual lo guarda bien, hasta alli todo bien.
Pero hay momentos en que me muestra un numero que no es, es decir solo lo muestra en el alert pero en mi base de datos guarda otro numero. alguien podria saber cual es mi error porfa necesito sus ayudas urgente.
Gracias de antemano.