Gå til innhold

Sjekke hvis stream er online, gjør nettsiden veldig treg


Anbefalte innlegg

Hei!

Fant et script for et par dager siden som skulle sjekke om en stream var online, for også vise linken til denne streamen hvis dette var sant. Likevel så gjør dette scriptet nettsiden super treg! Har ikke noe særlig med erfaring innen PHP, men forstår basics.

 

<?
$chan = "";
$streams = array(
"puttly", "DECOPHLY", "NHCFENRIR", "NHCTWIMP", "EIRIKLAGO", "CELADAN", "AURIOUK", "AXLAV", "YNGVIS", "xmindfr3akx", "AJACO92", "DEOWEE", "PEACEBREAKER_92"
);
echo "<br />";
foreach ($streams as &$i) {
$chan = "http://api.justin.tv/api/stream/list.json?channel=" . $i;
$json = file_get_contents($chan);
$exist = strpos($json, 'name');
if($exist) {
echo "» <a href=\"http://justin.tv/" . $i . "\">" . $i . "</a>";
}

}
echo '<br /><br /> <a href="index.php?site=forum_topic&topic=291&type=ASC&page=1">Legg til din stream her!</a>';

?>

 

Googlet litt til, og fant en tråd på JustinTV-forumet hvor en person forklarte prosessen slik:

Pretty easy, just write a PHP script using curl/fopen/regex/whatever and look for this on the stream page's HTML:

 

Quote:

PP['channel_live'] = true;

 

If you find it, then the stream is live!

 

Jeg forstår at scriptet jeg bruker, og forslaget fra denne personen ikke bruker samme metode, men med mine dårlige ferdigheter innen PHP så finner jeg ikke ut en god måte løse dette på. Link til hele forum-tråden finner du her.

 

Takk for all hjelp på forhånd!

Lenke til kommentar
Videoannonse
Annonse

Dette er vel javascript sin jobb.

 

Dok1: et lita javascript som kalder til ditt "dok2", slik at resten av siden kan lastes ferdig, mens den trege siden (justin.tv) laster i 5 min til.

Dok2: Koden du har der.

 

Hmm, usikker hvordan jeg skal angripe dette med javascript. Går ut i fra jeg egentlig bare vil hente frem:

if($exist) {
echo "» <a href=\"http://justin.tv/" . $i . "\">" . $i . "</a>";

på en eller annen måte?

 

Takk for svar, selv om jeg ikke har peiling på hvordan jeg skal fikse det!

 

 

Edit:

Hadde det vært mulig å få denne php-fila til å sende output til en html-fil, for også bruke php for å include bare html-fila?

Endret av decophly
Lenke til kommentar

Lag en php fil som har som eneste oppgave å sjekke om en stream er online og skriver ut resultatet. Den skal da skrive ut en blank side med ordet "online" eller ordet "offline".

 

På siden din har du et javascript (anbefaler å bruke jquery her) som kaller på dette scriptet:

$.get("isstreamonlinescript.php", function(data){
alert("Stream er: " + data);
});

 

Koden over har du i HTML koden. Denne vil da spørre etter om streamen er online og gi svar så fort det kommer.

 

Da kan du loade siden din umiddelbart uten å vente, mens online/offline statusen kommer opp så fort den er klar.

 

Lenke til kommentar
  • 2 uker senere...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...