Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- // parametros de entrada
- $minimo = $_GET['minimo'];
- $maximo = $_GET['maximo'];
- $extraer = $_GET['cantidad'];
- // minimo: numero minimo de la muestra
- // maximo: numero maximo de la muestra
- // extraer: cantidad de numeros a extraer
- // resultado: arreglo donde guarda el resultado de la muestra
- function muestra($minimo, $maximo, $extraer, &$resultado) {
- $extraidos = array();
- // mientras la cantidad de extraidos sea menor a la candidad a extraer
- while (sizeof($extraidos) < $extraer) {
- $aleatorio = rand($minimo, $maximo);
- // si no fue extraido anteriormente, lo agrego a la lista de extraidos
- if (!in_array($aleatorio, $extraidos)) {
- $extraidos[] = array('id' => $aleatorio, 'numero' => '', 'nombre' => '');
- }
- }
- // retorna el resultado de la muestra
- $resultado['resultado'] = $extraidos;
- }
- // ejecuta una muestra segun los parametros de entrada
- $resultado = array();
- muestra($minimo, $maximo, $extraer, $resultado);
- // por cada numero que fue sorteado, busca la tarjeta y nombre asociado en la BD
- include_once("db/conexion.php");
- foreach ($resultado['resultado'] as $k => $v) {
- $sql = "SELECT numero, nombre FROM tarjetas WHERE id=".$v['id'];
- $result = pg_query($sql);
- if ($rs = pg_fetch_array($result)) {
- // da formato al numero de tarjeta xxxx xxxx xxxx xxxx
- $n = $rs['numero'];
- $numero = substr($n, 0, 4)." ".substr($n, 4, 4)." ".substr($n, 8, 4)." ".substr($n, 12, 4);
- // guarda el nombre y numero de tarjeta
- $resultado['resultado'][$k]['numero'] = $numero;
- $resultado['resultado'][$k]['nombre'] = $rs['nombre'];
- }
- }
- // imprime los resultados
- echo json_encode($resultado);
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement