Failed to open stream vermeiden

  • Hallo,

    Ich habe eine Custombox (Sidebar) erstellt mit dem Plugin von mobahner.
    In dieser Box wird angezeigt wenn ich auf Twitch Streame.

    Manchmal macht die API von Twitch jedoch macken und kann nicht richtig aufgerufen werden, dies erzeugt dann im Forum fehlermeldungen ('failed to open stream')

    Wie kann ich das hier vielleicht vermeiden dass wenn nicht erreichbar kein Fehler ausgespuckt wird?

    Der Code funktioniert ansich sehr gut nur manchmal baut die APi dann misst.


    ┌П┐(◉_◉)┌П┐

  • Durch Verwenden der HTTPRequest-Klasse an Stelle von file_get_contents und entsprechendem Try/Catch-Block um Verbindungsfehler abzufangen.

    Im Übrigen gibt es $json_array00 in deinem Code nicht.

  • Hier ein sehr einfaches Beispiel auf Basis deines obigen Codes:

  • Mich würde sowieso wundern, wenn dein obiger Code funktioniert hätte... Was sagt das Errorlog des Webservers?

    Der obrige Code Funktioniert, die Errorlog habe ich leider keinen Zugriff müsste ich Hoster anfragen.

    Aber wie gesagt der obrige Code geht 100% hatte ich lange im gebrauch, jedoch machts den failed to open stream fehler wenn API mal nicht reagiert.

    ┌П┐(◉_◉)┌П┐

  • Habe den Code mal aktualisiert.

    Danke für deine Mühe, aber leider noch immer nur weisse Seite.

    ERRORlog:

    Quote

    [Sun Mar 15 22:43:12 2015] [error] [client XXX] PHP Fatal error: Class 'wcf\\page\\StringUtil' not found in /var/www/vhosts/XXX/XXX/forum2/wcf/lib/data/dashboard/custom/scripts/DashboardCustomBox-30.class.php on line 15, referer: https://XXX/

    ┌П┐(◉_◉)┌П┐

  • Es sollte ein Bild anzeigen stream_online.png oder stream_offline.png aber es zeigt nix an :)

    EDIT: vielleicht das die durch echo ersetzen?

    EDIT2: Wenn der Stream online ist zeigt es an aber bei offline nicht.

    ┌П┐(◉_◉)┌П┐

  • @SoftCreatR

    Jetzt hauts hin, vielen, vielen lieben dank :)

    Andere Sache:
    Gibt es eine Rotation für die Logs (Protokoll > Fehler) im ACP, werden die nach X Tagen automatisch gelöscht?
    Wenn nicht wie kann man diese manuell leeren (einfach im FTP löschen)?

    ┌П┐(◉_◉)┌П┐

  • @SoftCreatR

    Heute war keine Fehlermeldung von "failed open to stream" zu sehen, als ich aber eben die Fehlerprotokolle geöffnet habe ist mir dennoch eine Fehlermeldung bezüglich diesem Script aufgefallen:


    ┌П┐(◉_◉)┌П┐

  • Zum Einen durch Googlebot ausgelöst und zum Anderen vollkommen korrekt da ich in dem Script eingebaut habe dass Fehler protokolliert werden ;) Dies wird über die Zeile im Catch-Block geregelt wo zeitgleich dafür gesorgt wird, dass Fehler unterdrückt werden.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!