PHP

Programando un bingo con PHP en 5 minutos

¿Qué haces cuando tus sobrinas quieren jugar al bingo, y solo tienes los cartones? ¿recortar papelitos, escribir los números en ellos y meterlos en una bolsa para ir sacándolos uno a uno?
Pues eso es justo lo que me ha pasado esta tarde, y la solución ha sido programar un pequeño script php en cinco minutos, subirlo a un server y acceder a él desde el móvil. Sí, es una frikada, y sí, podría haberlo hecho en javascript, y no tener que utilizar un servidor, pero en ese momento esto ha sido lo que ha salido.

Si queréis verlo online, desde aquí: ¡bingo!

Y este es el código:

Otra partida?';
        $salida.='
'; $_SESSION = array(); if (ini_get("session.use_cookies")) { $params = session_get_cookie_params(); setcookie(session_name(), '', time() - 42000, $params["path"], $params["domain"], $params["secure"], $params["httponly"]); } session_destroy(); }else{ if(isset($_SESSION['cantados'])==FALSE){ $_SESSION['i']=1; $_SESSION['cantados'][]=$numero; }else{ while(in_array($numero,$_SESSION['cantados'])) { $numero=rand(1,90); } $_SESSION['cantados'][]= $numero; $_SESSION['i']=$_SESSION['i']+1; } sort($_SESSION['cantados']); $salida.='
# restantes: '.(90-$_SESSION['i']).'
'; $salida.='
'.$numero.'
'; $salida.='
'; $decena=0; for($num=1;$num'; if(in_array($num, $_SESSION['cantados'])){ $salida.=''; }else{ $salida.=''; } if($decena==9) { $decena=0; $salida.=''; }else $decena++; } $salida.='
'.$num.''.$num.'
'; } ?> Bingoooooo!!!

Todo eso guardado en un archivo .php y subido a un server.

Pablo Baenas

View Comments

  • 5 minutos, lo que se dicen 5 minutos no creo que fueran jejejejeje. Demasiado código para 5 minutos.

    • jajaja pues no fueron muchos más la verdad... más sencillito no puede ser.. de hecho no utilicé  js, porque no me acordaba del uso de sesiones y para modificar el DOM..xDD Entre subirlo y demás, no sería más de 10

      • Si haces esto en 5 minutos, miedo me da lo que puedas hacer en la práctica de Tecnologías Web :) Un saludo

  • Que bueno! ya se que han pasado unos cuantos años desde esto.... pero... y ahora algun codigo php para poder generar los cartones y imprimirlos?
    Gracias

  • Hola, estaba haciendo un bingo server, es con android app, tengo 2 app, servidor, cliente

    Ya funciona, el server se maneja automaticamente a lo que abro la app se genera 1 mesa y comienza una cuenta regresiva, las apps interactuan con firebase, todo es automático, en el cliente se elijen tablas, y se inicia la partida cuando el server comienza la partida, pero ahora quiero crear varias mesas al mismo tiempo, entonces como el server va a estar pendiente de varias mesas a la vez, sin que se interrumpan entre ellas, ya que en el server aparece la activity del tablero y debe estar abierta para que corra el programa

    • ES SENCILLO AMIGO, RECURSIVIDAD. Que tal si creamos las tablas en una base de dats, en este caso, firebase, y cada carton tenga su ID, cosa tal que solo se asigne una sola vez a cada usuario, y esto a su vez, similar a la matriz, de este ejercicio en PHP, los vayamos, activando o desactivando de la matriz creada en firebase, y cada carton pueda hacer una peticion de refrescameinto en cada jugada via ajax, o que se compruebe con la pulzacion del jugador y una peticion que se valide en el firebase? si jugo o no la el numero de la ficha.? algo asi se me ocurre para cada carton. necesito hablar con el deño de este sitio web.

    • Hmm.. En principio el contenido del archivo es el mismo que puedes encontrar en el enlace que hay en la publicación. ¿Qué error te da?

  • ME GUSTARIA QUE ME CONTACTARA PARA VER SI PODEMOS HACER LA APP COMPLETA Y CUANTO ME COSTARIA +5804166959914

Recent Posts

Cómo crear un sistema de popups en Magento 2: Simple Popup Widget

Cómo crear popups personalizados en Magento 2 con widgets. Guía paso a paso. SimplePopupWidget para…

3 años ago

Entorno de desarrollo Magento 2 con Docker en menos de 10 minutos

Configura tu entorno de desarrollo de Magento 2 con Docker en menos de 10 minutos.

3 años ago

Ajustar en Centos la zona horaria (time zone)

Tips para sysadmins: ¿Cómo configuro en Centos la zona horaria? ¿Por qué es importante configurar…

5 años ago

Asignar o cambiar el hostname en Centos 7

Tip para sysadmins: ¿Qué es el hostname de un equipo? ¿Qué tipos de hostname hay?…

5 años ago

Cheat Sheet MySQL: privilegios de usuario

Cuando creamos una base de datos MySQL es una buena medida de seguridad crear diferentes…

11 años ago