Clase loteria PHP POO: Ejemplo Completo
Clase loteria PHP POO: Ejemplo Completo. En este pequeño artículo veremos una aplicación para el juego de la loteria, un ejercicio utilizando clases PHP y otro ejemplo usando PHP y un formulario. Lo que hará será la comprobación de dos variables enviados desde un formulario. Sin embargo, si son idénticas mostrara una leyenda impresa «GANASTE LA LOTERIA», caso contrario nos mostrar un mensaje que no tuvo ningún acierto en el juego.
Sintaxis Clase PHP
class A { function foo() { echo '$this está definida'; } }
Resultado de la loteria ejecutada en el navegador.
Nos apoyaremos en clases básicas del PHP orientado a objetos (POO), manejo de atributos, métodos, instancias y dos métodos generalmente usados que son el «__construct()» y el «__destruct()».
Para este genial ejercicio crearemos una Clase llamada «MiLoteria» para dar inicio al código PHP.
Clase loteria PHP POO: Ejemplo Completo
Paso #01 Utilizando una clase PHP.
<!doctype html> <html> <head> <meta charset="utf-8"> <title>Clase Loteria PHP POO </title> <style type="text/css"> *{ font-family:Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, sans-serif} .main{ margin:auto; border:1px solid #7C7A7A; width:40%; text-align:left; padding:30px; background:#85c587} input[type=submit]{ background:#6ca16e; width:100%; padding:5px 15px; background:#ccc; cursor:pointer; font-size:16px; } input[type=text]{ margin: 5px; } </style> </head> <body bgcolor="#bed7c0"> <div class="main"> <h1>Clase Loteria PHP POO </h1> <?php // Inicio de la clase loteria class MiLoteria { // Aplicar Atributos public $minumero; public $miintentos; public $miresultado = false; // Metodos que usaremos en este ejercicio public function __construct ($minumero, $miintentos) { $this->minumero = $minumero; $this->miintentos = $miintentos; } public function aleatoria() { $numerominimo = $this->minumero/2; $numeromaximo = $this->minumero*2; for ($i=0; $i < $this->miintentos ; $i++) { // Generamos nùmeros aleatorios $miint = rand($numerominimo,$numeromaximo); self::miintentos($miint); } } public function miintentos($miint) { if ($miint == $this->minumero) { // Poniendo negrita a los aciertos echo "<b>".$miint." == ". $this->minumero. "<b><br>"; $this->miresultado = true; } else { echo $miint. " != ". $this->minumero. "<br>"; } } // creamos la funciòn destruct public function __destruct() { // Generamos respuesta del juego if ($this->miresultado) { echo " <div align=center>Felicidades usuario has acertado en el Juego de los: ". $this->miintentos. " intentos</div>"; } else { echo "<div align=center>Lastima no has acertado en el juego de los : ". $this->miintentos. " intentos</div>"; } } } ?> <br><br> <div class="footer"> <?php $loteria1 = new MiLoteria (10, 10); $loteria1->aleatoria();?> </div><!-- footer --> <div class="footer"> <br> <a href="https://www.baulphp.com/">www.baulphp.com</a> </div><!-- footer --> </div> </body> </html>
Paso #02 Utilizando PHP, Formulario y HTML.
<!doctype html> <html> <head> <meta charset="utf-8"> <title>Loteria PHP</title> <style type="text/css"> *{ font-family:Segoe, "Segoe UI", "DejaVu Sans", "Trebuchet MS", Verdana, sans-serif} .main{ margin:auto; border:1px solid #7C7A7A; width:40%; text-align:left; padding:30px; background:#85c587} input[type=submit]{ background:#6ca16e; width:100%; padding:5px 15px; background:#ccc; cursor:pointer; font-size:16px; } input[type=text]{width:45%; padding:5px 15px; font-size:16px; } input[type=text]{ margin: 5px; } </style> </head> <body bgcolor="#bed7c0"> <div class="main"> <h1>Loteria en PHP y HTML </h1> <?php // Verificando con Isset en envio del formulario if (isset($_POST['enviar'])) { echo "<p>Tus números ingresados fueron:</p>"; // Impresion de los numeros insertados en el formulario echo "<b>".$_POST['ingreso1']."</b> - <b>".$_POST['ingreso2']."</b>"; //Mostramos los nº que el user puso // Generamos dos numeros aleatorios $opcion1 = mt_rand(0,9); $opcion2 = mt_rand(0,9); echo "<p>Los números ganadores de la loteria fueron:</p>"; // Mostramos a los numeros ganadores echo "<p><b>$opcion1</b> - <b>$opcion2</b></p>"; if ($opcion1 == $_POST['ingreso1'] and $opcion2 == $_POST['ingreso2']) { //Si los 2 numeros coinciden FELICIDADES echo "<p><b>Felicidades, los números coinciden, ganaste.!!</b></p>"; } elseif ($opcion1 == $_POST['ingreso1']) { //Si el numero 1 coincide mostrar el siguiente mensaje... echo "<p>Has Logrado obtener <b>1</b> acierto:</p>"; echo "<p>El número del acierto es <b>$opcion1</b></p>"; } elseif ($opcion2 == $_POST['ingreso2']) { //Si el numero 2 coincide mostrar el siguiente mensaje... echo "<p>Felicidades usuario has logrado <b>1</b> acierto en el juego:</p>"; echo " <div style='border:1px solid #000000; text-transform:uppercase'> <h3 align='center'><p>El número acertado es <b>$opcion2</b></p></h3></div>"; } else { //Mostramos mensaje si el usuario no a tenido ningun acierto echo "<p>Lo sentimos, pero usted no ha logrado acierto alguno, Gracias por jugar.</p>"; } } else { //Al cargar la pagina muestra el formulario de juego echo "<br><form action='' method='POST'>"; echo "Ingrese 2 números para jugar a la loteria:"; echo "<br>"; echo "<p> <span>Ingrese numero 1:</span> <input required type='text' name='ingreso1' size='1' maxlength='1'></p>"; echo "<p> <span>Ingrese numero 2:</span><input required type='text' name='ingreso2' size='1' maxlength='1'></p>"; echo "<br><br>"; echo "<input type='submit' name='enviar' value='Ganar mi premio'>"; echo "</form>"; } ?> <br><br> <div class="footer"> <br> <a href="https://www.baulphp.com/">www.baulphp.com</a> </div><!-- footer --> <br><br> </div> </body> </html>
Describiendo un poco usaremos la función MT_RAND de la página oficial del PHP. Esperando que la breve explicación sea de su agrado.