ilch Forum » Allgemein » HTML, PHP, SQL,... » Fehller im Script minecraftserverping

Geschlossen
  1. #1
    User Pic
    MonkeyOnKeyboard Moderator
    Registriert seit
    10.02.2014
    Beiträge
    462
    Beitragswertungen
    23 Beitragspunkte
    Hallöchen, ich baue gerade für jemanden an einem Minecraftserver query Modul für ilch.
    Bis jetzt läuft fast alles bis auf ein Script, welches mit bei Server offline in Fehler geht.



    Und zwar lese ich mit hilfe dieses Scriptes als LIB ein Queryarray aus. Das funktioniert auch soweit. solange der server nicht offline ist oder die query im minecraftserver enabled ist.

    Ich packs nicht das Script anzupassen.


    verwendete ilch Version: 2.1.x

    betroffene Homepage: localhost
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    RTX2070 Hall Of Fame
    Registriert seit
    14.06.2019
    Beiträge
    284
    Beitragswertungen
    48 Beitragspunkte
    Solange der Server nicht offline ist sagst du läuft es....wenn Offline läuft nicht??

    Versuche doch mal einen try()-Catch() Block mit exception.

    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    MonkeyOnKeyboard Moderator
    Registriert seit
    10.02.2014
    Beiträge
    462
    Beitragswertungen
    23 Beitragspunkte
    Moin, an welcher stelle?

    Hast du dir mal die Datei angeschaut?
    Sorry aber ich hab keine ahnung wo an welcher stelle ich das mit try und catch machen soll
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    blackcoder Entwickler
    Registriert seit
    22.05.2014
    Beiträge
    2.474
    Beitragswertungen
    411 Beitragspunkte
    Moin,

    du rufst doch in irgendeinem Script die "Connect" und "Query"-Funktion aus der Klasse auf.

    Die "Connect" kann die Exception "MinecraftPingException("Failed to connect or create a socket: $errno ($errstr)")" werfen.
    Die "Query" kann die folgenden Exceptions werfen:
    • MinecraftPingException('Server read timed out')
    • MinecraftPingException('Server returned too few data')
    • MinecraftPingException('JSON parsing failed: ' . json_last_error_msg())


    Die "Query" kann außerdem noch deine Daten als Array oder False zurückgeben, wenn die Antwort kürzer als 10 Zeichen ist.
    "QueryOldPre17" entweder False oder deine Daten als Array.

    Also packt du deine Funktionsaufrufe in ein Try-Catch:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    try {
        // Aufruf von Connect() und Rückgabewerte auswerten.
        // Aufruf von Query() und Rückgabewerte auswerten
    } catch (MinecraftPingException $e) {
        // Auf die verschiedenen Exceptions reagieren.
        // Die verschiedenen MinecraftPingExceptions kannst du durch die "Message" oder andere Eigenschaften unterscheiden.
        echo 'Exception abgefangen: '$e->getMessage(), "\n";
    } finally {
        // Verbindung trennen, aufräumen, ...
    }


    Hier paar Links zur PHP-Dokumentation:
    www.php.net/manual/de/function.json-decode.php
    www.php.net/manual/de/language.exceptions.php
    www.php.net/manual/de/language.exceptions.extending.php


    Zuletzt modifiziert von blackcoder am 28.08.2023 - 17:28:24
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    MonkeyOnKeyboard Moderator
    Registriert seit
    10.02.2014
    Beiträge
    462
    Beitragswertungen
    23 Beitragspunkte
    Danke habs dann auch gefunden und super Informationen. Supi danke nochmal scheint nun zu laufen
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten