����JFIF��H�H����Exif��MM�*���� ��3����V�����3������3�(��������������������3�����
Server IP : 74.208.127.88 / Your IP : 216.73.216.85 Web Server : Apache/2.4.41 (Ubuntu) System : Linux ubuntu 5.4.0-163-generic #180-Ubuntu SMP Tue Sep 5 13:21:23 UTC 2023 x86_64 User : www-data ( 33) PHP Version : 7.4.3-4ubuntu2.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /proc/self/root/proc/thread-self/root/var/www/html/rockyo/view/ |
Upload File : |
<?php include("header.php"); ?> <!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <title>Contadores Rockio</title> <!-- Bootstrap 5 --> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet"> <!-- Chart.js --> <script src="https://cdn.jsdelivr.net/npm/chart.js"></script> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <style> body { background-color: #f8f9fa; padding-top: 20px; } .card { border-radius: 1rem; box-shadow: 0 0 15px rgba(0,0,0,0.08); margin-bottom: 20px; } #last-update { font-size: 0.9em; color: gray; } canvas { width: 100% !important; height: auto !important; } </style> </head> <body> <div class="container-fluid"> <h4 class="text-center mb-3">Contadores de Monederos - Rockio</h4> <div class="row justify-content-center"> <div class="col-12 col-md-6"> <!-- Monederos --> <div class="card p-3"> <div class="d-flex justify-content-between align-items-center mb-2"> <h6 class="mb-0">Último Registro</h6> <span class="badge bg-primary">Actualiza cada 2s</span> </div> <ul class="list-group list-group-flush mb-2"> <li class="list-group-item d-flex justify-content-between">Monedero 1: <strong id="m1">-</strong></li> <li class="list-group-item d-flex justify-content-between">Monedero 2: <strong id="m2">-</strong></li> </ul> <p id="last-update" class="text-center mb-0">Actualizado: <span id="ts">-</span></p> </div> <!-- Gráfica --> <div class="card p-3"> <div class="d-flex justify-content-between align-items-center mb-2"> <h6 class="mb-0">Gráfica de Monederos</h6> <span class="badge bg-success">Actualiza cada 10s</span> </div> <canvas id="pieChart"></canvas> </div> </div> </div> </div> <script> let pieChart; let ultimoM1 = 0; let ultimoM2 = 0; // Actualiza los datos cada 2s function actualizarDatosMonederos() { fetch("../ajax/get_contadores.php") .then(res => res.json()) .then(json => { if (json.success) { ultimoM1 = parseInt(json.data.monedero_1); ultimoM2 = parseInt(json.data.monedero_2); document.getElementById("m1").textContent = ultimoM1; document.getElementById("m2").textContent = ultimoM2; document.getElementById("ts").textContent = json.data.timestamp; } }) .catch(err => console.error("Error al obtener monederos:", err)); } // Actualiza la gráfica cada 10s function actualizarGrafica() { const data = { labels: ["Monedero 1", "Monedero 2"], datasets: [{ data: [ultimoM1, ultimoM2], backgroundColor: ['#0d6efd', '#198754'], }] }; if (pieChart) { pieChart.data = data; pieChart.update(); } else { const ctx = document.getElementById('pieChart').getContext('2d'); pieChart = new Chart(ctx, { type: 'pie', data: data, options: { responsive: true, plugins: { legend: { position: 'bottom' } } } }); } } // Inicial actualizarDatosMonederos(); actualizarGrafica(); // Intervalos setInterval(actualizarDatosMonederos, 2000); setInterval(actualizarGrafica, 10000); </script> </body> </html>