Beste leden,

Ik wil enkel de data laten refreshen van mijn php pagina.
Volgens mij is dat alleen radioDetails.
Ik heb er weinig kaas van gegeten.
Alle hulp word zeer gewaardeerd!
Dit is wat heb:

<?php
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache");
header("Pragma: no-cache");
?>
 
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>TELLER</title>
    <link rel="stylesheet" href="./style.css">

</head>
 <body>
    <div id="topbuts">
        <a class="btn" href="./index.php">Ververs</a>
		<a class="btn" href="./log_listeners.php" target="_blank">Listeners Updates / Peaks</a>

        <div class="clearfix"></div>
    </div>
    <?php include ('array.php');?>
     <div class="content">
    <br />
        <?php
			$peak = file_get_contents ('peak.txt');
            if ($data['status'] != '1')
			{
                echo '<b>Error: Servers Offline...</b>';
            }
        ?>
        <br />
        
		<div class="box">
            <div class="head"><i class="icon-play-circle"></i> &nbsp; BesteHitsNL - All Icecast & Shoutcast servers</div>
            <div class="box-content">
                <div class="radioLogo">
                    <img src="logo120.png">
                </div>
                <div class="radioDetails">
                    <b>Listeners:</b> <?php echo $data['listeners']; ?> <br />
                    <b>Listener Peak:</b> <?php echo $peak; ?> <br />
                    <b>Total Stream Hits:</b> <?php echo $data['hits']; ?> <br />
                </div>
                <div class="clearfix" style="border-bottom: 1px solid #C8C8C8;"></div>
                <div class="listener">
                    <div class="col">Hostname</div>
                    <div class="col">Useragent (Player)</div>
                    <div class="col">Listen Time</div>
					<div class="col">Server</div>
					<div class="col">Location</div>
                </div>
				
                <div id="listeners">
                    <?php
                        if (is_array($data['listeners-list']))
						{
                            foreach ($data['listeners-list'] as $list)
							{
								$ip = $list['HOSTNAME'];
								if ($ip == '127.0.0.1')
								{
									$LocationString = 'Localhost';
								}
								else
								{
									$ipInfo = grabIpInfo($ip);
									$ipJsonInfo = json_decode($ipInfo);
									$LocationString = $ipJsonInfo->name;
								}
                                echo '<div class="listener">
                                <div class="col">' . $list['HOSTNAME'] . '</div>
                                <div class="col">' . $list['USERAGENT'] . '</div>
                                <div class="col">' . floor($list['CONNECTTIME']/3600)."h ".floor(($list['CONNECTTIME'] / 60) % 60) ."m ".floor($list['CONNECTTIME'] % 60)."s" . '</div>
								<div class="col">' . $list['SERVER'] . '</div>
								<div class="col">' . $LocationString . '</div>
                                </div>';
                            }
                        }
					function grabIpInfo($ip)
					{
						$curl = curl_init();
						curl_setopt($curl, CURLOPT_URL, "https://api.ipgeolocationapi.com/geolocate/" . $ip);
						curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
						$returnData = curl_exec($curl);
						curl_close($curl);
						return $returnData;
					}
                    ?>
					
                </div>
            </div>
        </div>
		<br /><br />
    </div>
</body>

Dit stukje heb ik zelf erneer gezet!
<script src="https://code.jquery.com/jquery-3.5.1.js"></script> 
<div id="radioDetails">dynamic content ?</div>
<script> 
$(document).ready(function(){
setInterval(function(){
      $("#radioDetails").load(window.location.href + "#radioDetails" );
}, 3000);
});
</script>
Hopelijk lukt het, en anders horen we wel waar het fout gaat.
Met de spreekwoordelijke 'handdoek in de ring gooien' win je niks. Al het begin kan moeilijk zijn, maar je leert er uiteindelijk wel van.
Hoe bedoel je? Valse info? Wat klopt er niet?

Persoonlijk raad ik aan om niet elke elke 3 seconden een request te doen. Voor mensen met een beperkte databundel vliegt het er doorheen.
Hij moet de streamgegevens van mij ophalen.

Nu zag ik dit als gegevens:

88.99.58.156
WinampMPEG/5.50
68h 28m 7s
MP3 stream
Germany
Dat kan misschien van een andere luisteraar zijn?

Wat staat er in peak.txt en array.php. Die lijken mij verantwoordelijk voor het ophalen van de data uit de streaming-server.
Excuses, zag de originele vraag over het hoofd.

Zet dit in het refresh.php bestand. Of wat er verversts moet worden.

<b>Listeners: </b> 16 <br />
<b>Listener Peak: </b> 27 <br />
<b>Total Stream Hits: </b> 497885 <br />
<?php
echo "<b>Tijd:</b> " . date("H:i:s") . "</br />";
?>


En dan met het JavaScript hier plaatsen

<div id="radioDetails" class="radioDetails">


<script>
var auto_refresh = setInterval(
function()
{
	$('#radioDetails'). fadeOut('slow').load('refresh.php').fadeIn("slow");
}, 2000);
</script>
Uiteraard moet je zelf wel de juiste data ophalen, Kevin. ;-)
in piek.txt hoogste aantal luisteraars
in listeners.txt de aantal luisteraars live





[size=xsmall]Toevoeging op 15/03/2021 14:32:40:[/size]

volgens mij moet ik ook GetStats.php ophalen
Als een medehelper in een topic statische data als voorbeeld aangeeft, dan moet je dus niet ervan uitgaan dat het bruikbare data is ;-)

Reageren