DEV Community

Hugo Almada
Hugo Almada

Posted on

Código php que lee json del sitio de telebingo triple senete y lo formatea

Código php que lee json del sitio de telebingo triple senete y lo formatea para imprimirlo en cualquier web de sorteos

Para crear un código PHP que lea el JSON proporcionado y lo imprima en un HTML conforme al formato que mencionas, primero debemos descomponer el JSON, procesar los datos y, finalmente, generarlo en un formato HTML adecuado. A continuación, te muestro un ejemplo de cómo puedes hacerlo.

Puedes ver en funcionamiento el código en la página de telebingo triple donde se consulta el sorteo de telebingo triple por número de cartón y también desde la página de seneté

Paso 1: Leer y decodificar el JSON
Primero, leeremos el JSON y lo decodificaremos. Luego, extraeremos la información necesaria para mostrarla en la página HTML.

`
<?php
$jsonData = "{
"datos": {
"fecha": "2024-11-03 00:00:00.0",
"json": "[{"nombreJugada":"GRANDIO2OS","sorteoJugadaId":"2582","cantidadGanadores":20,"identificador":"1378","bolillas":"02,03,05,06,09,10,12,16,17,21,22,25","azar":false,"premios":[{"premio":"POZO","nroGanadores":"0","aciertos":"12"},{"premio":"GS. 2.000.000","nroGanadores":"20","aciertos":"11"}]},{"nombreJugada":"PODEROSO","sorteoJugadaId":"2581","cantidadGanadores":9312,"identificador":"1378","bolillas":"01,04,06,09,12,13,14,15,19,21,22,25","azar":false,"premios":[{"premio":"Gs. 2.300.000.000","nroGanadores":"0","aciertos":"12"},{"premio":"Gs. 2.000.000","nroGanadores":"4","aciertos":"11"},{"premio":"Gs. 50.000","nroGanadores":"195","aciertos":"10"},{"premio":"Gs. 10.000","nroGanadores":"2360","aciertos":"9"},{"premio":"Gs. 10.000","nroGanadores":"5964","aciertos":"3"},{"premio":"Gs. 10.000","nroGanadores":"751","aciertos":"2"},{"premio":"Gs. 10.000","nroGanadores":"38","aciertos":"1"},{"premio":"Gs. 2.000.000","nroGanadores":"0","aciertos":"0"}]},{"nombreJugada":"DOBLE CHANCE","sorteoJugadaId":"2580","cantidadGanadores":7311,"identificador":"1378","bolillas":"02,03,06,07,08,09,10,11,12,13,15,16,17,19,24","azar":false,"premios":[{"premio":"POZO","nroGanadores":"0","aciertos":"15"},{"premio":"Gs. 2.000.000","nroGanadores":"22","aciertos":"14"},{"premio":"Gs. 50.000","nroGanadores":"560","aciertos":"13"},{"premio":"Gs. 10.000","nroGanadores":"6729","aciertos":"12"}]},{"cantidadGanadores":112,"azar":true,"premios":[{"premio":"Gs. 500.000","cartones":"405931, 407425, 407483, 411464, 418426, 421362, 425586, 427759, 444899, 451184, 452540, 477827, 480302, 485164, 490563, 498225, 504490, 507129, 509142, 510240, 510311, 517545, 517605, 518613, 525792, 529142, 534636, 545077, 552355, 555176, 556951, 560836, 560962, 564833, 567956, 575681, 576714, 586287, 589607, 592422, 594188, 595328, 599717, 605993, 613501, 622734, 629121, 631882, 633353, 639357"},{"premio":"Gs. 500.000","cartones":"406842, 409941, 411357, 414963, 419667, 423968, 434055, 437766, 443013, 446521, 447928, 450752, 452209, 453226, 462838, 463892, 473985, 477497, 483080, 487045, 491689, 494728, 498525, 500689, 504067, 510558, 519067, 524212, 528586, 539488, 560713, 561981, 562421, 566093, 566891, 578405, 592665, 596124, 598131, 598461, 600622, "601236, 603595, 608801, 611915, 623820, 627470, 628212, 634710, 637729"},{"premio":"UNA BICICLETA + CASCO + BOTELLA TÉRMICA","cartones":"409064, 424219, 479655, 480388, 481137, 512700, 589198, 593049, 617528, 633767"},{"premio":"UNA NISSAN KICKS","cartones":"503707, 584518"}]}]",
"id": 682,
"identificador": 1378
},
"mensaje": "Los resultados se obtuvieron con éxito.",
"error": false
}";

// Decodificar el JSON
$data = json_decode($jsonData, true);
$datos = $data['datos'];
$jugadas = json_decode($datos['json'], true);

?>

<!DOCTYPE html>




Resultados de Sorteo
<br> body { font-family: Arial, sans-serif; }<br> .jogada { margin-bottom: 20px; }<br> .premio { margin-left: 20px; }<br> h2 { color: #333; }<br> .fecha { font-weight: bold; }<br>

Resultados del Sorteo

Fecha:

<?php foreach ($jugadas as $jugada): ?>


<?php echo $jugada['nombreJugada']; ?> (ID: <?php echo $jugada['sorteoJugadaId']; ?>)


Cantidad de Ganadores: <?php echo $jugada['cantidadGanadores']; ?>


Bolillas: <?php echo $jugada['bolillas']; ?>


¿Es Azar? <?php echo $jugada['azar'] ? 'Sí' : 'No'; ?>

    <h3>Premios:</h3>
    <ul>
        <?php foreach ($jugada['premios'] as $premio): ?>
            <li class="premio">
                <strong>Premio:</strong> <?php echo $premio['premio']; ?>, 
                <strong>Número de Ganadores:</strong> <?php echo $premio['nroGanadores']; ?>, 
                <strong>Aciertos:</strong> <?php echo $premio['aciertos']; ?>
                <?php if (isset($premio['cartones'])): ?>
                    <br><strong>Cartones:</strong> <?php echo $premio['cartones']; ?>
                <?php endif; ?>
            </li>
        <?php endforeach; ?>
    </ul>
</div>

<?php endforeach; ?>



`
Este código puede leer los resultados de senete por número de cartón e imprimirlos en cualquier sitio web

Top comments (0)