Beiträge von Jakob Abfalter

    Haudi ich hab mal wieder ne kleine Frage.

    Habe mein Php Script für den Cron Job jetzt soweit fertig.
    Wenn ich testweise auf meinem Wamp Server ausführe funktioniert es, allerdings gibt es mir folgenden Error aus.

    [TABLE='class: xdebug-error xe-notice']

    [tr]


    [TH='bgcolor: #f57900, colspan: 5, align: left']( ! ) Notice: Undefined offset: 0 in D:\wamp\www\Lol Streamportal\database_actualize.php on line 45[/TH]

    [/tr][tr]


    [TH='bgcolor: #e9b96e, colspan: 5, align: left']Call Stack[/TH]

    [/tr][tr]


    [TH='bgcolor: #eeeeec, align: center']#[/TH]
    [TH='bgcolor: #eeeeec, align: left']Time[/TH]
    [TH='bgcolor: #eeeeec, align: left']Memory[/TH]
    [TH='bgcolor: #eeeeec, align: left']Function[/TH]
    [TH='bgcolor: #eeeeec, align: left']Location[/TH]

    [/tr][tr]


    [TD='bgcolor: #eeeeec, align: center']1[/TD]
    [TD='bgcolor: #eeeeec, align: center']0.0013[/TD]
    [TD='bgcolor: #eeeeec, align: right']693072[/TD]
    [TD='bgcolor: #eeeeec']{main}( )[/TD]
    [TD='bgcolor: #eeeeec']..\database_actualize.php:0[/TD]

    [/tr][tr]


    [TD='bgcolor: #eeeeec, align: center']2[/TD]
    [TD='bgcolor: #eeeeec, align: center']1.6963[/TD]
    [TD='bgcolor: #eeeeec, align: right']705824[/TD]
    [TD='bgcolor: #eeeeec']get_viewers( )[/TD]
    [TD='bgcolor: #eeeeec']..\database_actualize.php:63[/TD]

    [/tr]


    [/TABLE]

    [TABLE='class: xdebug-error xe-notice']

    [tr]


    [TH='bgcolor: #f57900, colspan: 5, align: left']( ! ) Notice: Undefined offset: 0 in D:\wamp\www\Lol Streamportal\database_actualize.php on line 45[/TH]

    [/tr][tr]


    [TH='bgcolor: #e9b96e, colspan: 5, align: left']Call Stack[/TH]

    [/tr][tr]


    [TH='bgcolor: #eeeeec, align: center']#[/TH]
    [TH='bgcolor: #eeeeec, align: left']Time[/TH]
    [TH='bgcolor: #eeeeec, align: left']Memory[/TH]
    [TH='bgcolor: #eeeeec, align: left']Function[/TH]
    [TH='bgcolor: #eeeeec, align: left']Location[/TH]

    [/tr][tr]


    [TD='bgcolor: #eeeeec, align: center']1[/TD]
    [TD='bgcolor: #eeeeec, align: center']0.0013[/TD]
    [TD='bgcolor: #eeeeec, align: right']693072[/TD]
    [TD='bgcolor: #eeeeec']{main}( )[/TD]
    [TD='bgcolor: #eeeeec']..\database_actualize.php:0[/TD]

    [/tr][tr]


    [TD='bgcolor: #eeeeec, align: center']2[/TD]
    [TD='bgcolor: #eeeeec, align: center']5.0968[/TD]
    [TD='bgcolor: #eeeeec, align: right']706400[/TD]
    [TD='bgcolor: #eeeeec']get_viewers( )[/TD]
    [TD='bgcolor: #eeeeec']..\database_actualize.php:63[/TD]

    [/tr]


    [/TABLE]

    [TABLE='class: xdebug-error xe-notice']

    [tr]


    [TH='bgcolor: #f57900, colspan: 5, align: left']( ! ) Notice: Undefined offset: 0 in D:\wamp\www\Lol Streamportal\database_actualize.php on line 45[/TH]

    [/tr][tr]


    [TH='bgcolor: #e9b96e, colspan: 5, align: left']Call Stack[/TH]

    [/tr][tr]


    [TH='bgcolor: #eeeeec, align: center']#[/TH]
    [TH='bgcolor: #eeeeec, align: left']Time[/TH]
    [TH='bgcolor: #eeeeec, align: left']Memory[/TH]
    [TH='bgcolor: #eeeeec, align: left']Function[/TH]
    [TH='bgcolor: #eeeeec, align: left']Location[/TH]

    [/tr][tr]


    [TD='bgcolor: #eeeeec, align: center']1[/TD]
    [TD='bgcolor: #eeeeec, align: center']0.0013[/TD]
    [TD='bgcolor: #eeeeec, align: right']693072[/TD]
    [TD='bgcolor: #eeeeec']{main}( )[/TD]
    [TD='bgcolor: #eeeeec']..\database_actualize.php:0[/TD]

    [/tr][tr]


    [TD='bgcolor: #eeeeec, align: center']2[/TD]
    [TD='bgcolor: #eeeeec, align: center']6.0124[/TD]
    [TD='bgcolor: #eeeeec, align: right']706184[/TD]
    [TD='bgcolor: #eeeeec']get_viewers( )[/TD]
    [TD='bgcolor: #eeeeec']..\database_actualize.php:63[/TD]

    [/tr]


    [/TABLE]


    wie gesagt es funktioniert aber trotzdem, ist das ein Problem oder kann ich es so lassen? Hier der Code der scheinbar das Problem verursacht

    Code
    [/FONT][/COLOR]	//Twitch	else if($typ == 't') {		$json_file = file_get_contents("http://api.justin.tv/api/stream/list.json?channel=".$stream_id);		$json_array = json_decode($json_file, true);		return $json_array [0]['channel_count'];	}

    Hab mal bei Own3d gefragt und sehr schnell ein Antwort bekommen :)

    Ohne dass ich gefragt habe, haben sie mir gesagt wie clgaming es macht, yay :D
    Werde dass jetzt auch so machen, wenn ich die HP dann online gebe, werd ich wohl nen Server brauchen für den Cron job, aba ok ^^

    alsomit threading oder hyperthreading hab ich bisher nix zu tun gehabt, aber du könntest nen cronjob bauen der 1 oder 2mal am tag alle streams durchnudelt und in die db schreibt ob die sau online is oder net...

    ja das langatmige gedöhnse liegt meist dann an anderen anbietern und deren langsamen apis, eventuell kannste das auch über ajax bewerkstelligen und dem user dann für jeden einzelnen aufruf nen loader zeigen :)

    danke für deine Antwort.
    also 1 oda 2 mal am tag durchlaufen ist leider vieeel zu wenig. Dann würden ja zeitweise streams angezeigt die längst nicht mehr online sind, bzw streams die längst online sind nicht angezeigt. (Meine Seite soll Streams von League of Legends Pros zeigen, diese streamen meist nur ein paar Stunden pro Tag). Und die Viewerzahlen wären dann ja auch alles andere als aktuell.
    Das mit den in eine Datenbank schreiben kann ich daher glaub ich vergessen, da die Anzahl an Aktualiesierungen welche ständig durchgeführt werden müssten, die unstabilen APIs sicher nicht packen würden.
    Wie meinst du dass mit Ajax? Ich kenne diese Programmiersprache überhaupt nicht, was könnte ich mit der machen??

    Was mir auch noch eingefallen wäre, im ownd3d Quelltext eines Streams (im twitch wahrscheinlich auch) steht die Vieweranzahl. Würde ich irgendwie ein Programm schreiben, welches diese findet und ausliest könnte dies vielleicht schneller gehen als mit den APIs. Jemand eine Idee wie ich dass machen könnte??

    Hallo ich bin jetzt mit dem "basic code" schon langsam am fertig werden, was mir grade ein bisschen Sorgen macht sind die Laufzeiten für das Auslesen des onlineStatus und der Viewer eines Streams.
    Hier mal der Code (Twitch Viewerauslesen hab ich noch nicht geschrieben)

    Eine Anfrage alleine dauert schon ~ 3 Sekunden, was bei vlt 30 Streams welche angezeigt werden einfach nicht bewerkstelligbar ist. Das Problem liegt scheinbar an dem langsamen API der Streamanbieter. Wie ich schon sagte hab ich mit PHP, XML e.c. kaum was am Hut und könnte da eure Hilfe gebrauchen.
    Ein paar Überlegungen von mir:
    Ist es möglich diese Werte irgendwie zu cachen, oder so in der Art?? Dann müsste nur diese lästig lange Ladezeit nur einmal durchgeführt werden, obwohl diese Lösung vlt auch nicht optimal ist.
    Wäre es theoretisch möglich die Werte in gewissen Zeitabständen in eine Datenbank zu schreiben?? Angenommen ich hätte einen Server, sollte dies möglich sein oder?
    ich habe auch schon den Quelltext von http://clgaming.net/ gecheckt, lustiger weise nur

    Code
    <a href="/live/4-clg-doublelift">CLG Doublelift</a><div>
    1381 viewers
    </div>

    Kann es sein dass die die Werte auch einer Datenbank entnehmen??

    Bin dankbar für jede Antwort :)

    Edit: Eben hat mich ein Freund auf eine weitere Idee gebracht, ist es möglich diese Anfragen zu parallelisieren, ähnlich wie in Java Threads, geht dass in Php??

    hallo,

    Mein Thread würde vermutlich in 3 verschiedene Unterforen passen ich habe jetzt einfach mal dieses hier ausgewählt.
    Ich habe lange nicht mehr mit HTML/CSS/Javascript/PHP gearbeitet deswegen ist mein Wissen (welches auch noch nie so sonderlich groß war) etwas eingerostet. Habe allerdings viel Programmiererfahrung in Java und kann auch etwas Haskell und SQL.

    Anyway folgendes will ich auf meiner Webseite implementieren und frage mich gerade wie ich dass am besten angehe.

    Ich will eine Liste ausgewählter Own3d und Twitch Livestreams auflisten. (allerdings sollen nur die angezeigt werden welche auch tatsächlich gerade online sind) Die Liste soll nach gewissen Kriterien gruppiert sein, die einzelnen Gruppen sollen auf und zu gemacht werden können, defaultmäßig alle offen sein. (so dropdown mäßig) Beim Klicken eines solchen Menüpunktes wird der jeweilige Stream in einem Iframe geöffnet. Ich habe daran gedacht Streameinbettcode, Name, Onlinestatus, Viewers usw. in einer Datenbank zu speichern, was mMn die beste Lösung wäre, da die Wartung so ausgesprochen leicht sein wird.
    Was mir jetzt die meisten Grübel bereitet ist wie ich die mittels SQL ausgewählten Tabelleneinträge der Datenbank als Menüpunkt speichere und diese gleichzeitig so verlinke, dass beim Klicken darauf der ebenfalls aus der DB ausgelesen Code ins Mainframe übergeben wird, weil ich absolut nicht weiß wie ich aus Datenbankeinträge Menüpunkte mache.

    Vielleicht können mir ein paar Leute mit mehr Erfahrung dabei etwas weiterhelfen??

    Edit:
    Hier ein Beispiel was ich meine:
    http://clgaming.net/live/6718-dyrus
    Ich will halt noch zusätzlich die Streams gruppieren und eventuell noch Filtermöglichkeiten hinzufügen.