1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Downloads
  4. Galerie
    1. Alben
  5. Toolbox
    1. Passwort Generator
    2. Portchecker
  6. Mitglieder
    1. Mitgliedersuche
    2. Benutzer online
    3. Trophäen
    4. Team
Mo: 26 Mai 2025
  • Anmelden oder registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Forum
  • Dateien
  • Seiten
  • Bilder
  • Erweiterte Suche

Schön, dass du den Weg zu NodeZone.net gefunden hast! Aktuell bist du nicht angemeldet und kannst deshalb nur eingeschränkt auf unsere Community zugreifen. Um alle Funktionen freizuschalten, spannende Inhalte zu entdecken und dich aktiv einzubringen, registriere dich jetzt kostenlos oder melde dich mit deinem Account an.

Anmelden oder registrieren
    1. Nodezone.net Community
    2. Forum
    3. Gameserver & Hosting
    4. ArmA Series - ArmA 3 / Reforger
    5. Hilfeforum
    6. Archiv

    DB Error ?!?

    • Azoni
    • 25. April 2016 um 16:59
    • Geschlossen
    • Azoni
      Schüler
      Reaktionen
      50
      Trophäen
      11
      Beiträge
      157
      Bilder
      1
      • 25. April 2016 um 16:59
      • #1

      Moin,
      es werden bei mir diverse Werte aus der DB abgefragt, nun wollte ich, dass ein Int(20) auch noch mit abgefragt wird und habe diesen in die query Request reingeschrieben.
      Wenn ich ihn jedoch in der Mission empfange sagt er mir, dass er einen Array erwartet hat.
      Jedoch habe ich in der query Request vorher festgelegt, dass er diese als Zahl "wahrnehmen" soll :o
      Kennt wer das problem?
      MfG Azoni

      Eat Sleep Code Repeat

    • B4v4r!4n_Str!k3r
      Nerd
      Reaktionen
      246
      Trophäen
      11
      Beiträge
      725
      Bilder
      5
      • 25. April 2016 um 19:35
      • #2

      Poste einmal den kompletten Log, dann kann man dir bestimmt leichter helfen ^^

      23106-logo-schrift-dunkel-390-70-png class=

      Services rund um ArmA RPG Life

      ArmA Bibel: https://community.bistudio.com/wiki/

    • Azoni
      Schüler
      Reaktionen
      50
      Trophäen
      11
      Beiträge
      157
      Bilder
      1
      • 25. April 2016 um 19:44
      • #3

      RPT:

      Code
      16:52:08   Error foreach: Type Number, expected Array
      16:52:08 File mpmissions\__CUR_MP.Altis\core\session\fn_requestReceived.sqf, line 63


      Code in der requestReceived(Die Zivi Case):

      Code
      case civilian: {
              life_is_arrested = _this select 7;
              __CONST__(life_coplevel, 0);
              __CONST__(life_medicLevel, 0);
              life_houses = _this select 9;
              {
                  _house = nearestBuilding (call compile format["%1", _x select 0]);
                  life_vehicles pushBack _house;
              } foreach life_houses;
      
              life_test1 = parseNumber (_this select 9);
      
              life_gangData = _This select 10;
              if(count life_gangData != 0) then {
                  [] spawn life_fnc_initGang;
              };
              [] spawn life_fnc_initHouses;
          };
      Alles anzeigen

      Eat Sleep Code Repeat

    • Cris
      Anfänger
      Reaktionen
      33
      Trophäen
      11
      Beiträge
      76
      • 25. April 2016 um 20:02
      • #4

      Es wäre hilfreich, wenn du sagst, welche der Zeile da die Zeile 63 in deiner SQF ist. :P

    • Azoni
      Schüler
      Reaktionen
      50
      Trophäen
      11
      Beiträge
      157
      Bilder
      1
      • 25. April 2016 um 20:03
      • #5

      Sry ^^
      Das ist die Zeile :

      Code
      } foreach life_houses;


      Ich wette aber das es diese ist ^^

      Code
      life_test1 = parseNumber (_this select 9);

      Eat Sleep Code Repeat

    • B4v4r!4n_Str!k3r
      Nerd
      Reaktionen
      246
      Trophäen
      11
      Beiträge
      725
      Bilder
      5
      • 25. April 2016 um 20:07
      • #6

      ganz einfach:


      Code
      life_houses = _this select 9;
       {
       _house = nearestBuilding (call compile format["%1", _x select 0]);
       life_vehicles pushBack _house;
       } foreach life_houses;
       life_test1 = parseNumber (_this select 9);

      du hast anscheinend einen Fehler in deinen Indexen, da du zweimal den Index 9 hast und somit die gleiche Stelle im Feld abfrägst.
      schick uns bitte noch die dazugehörige Serverdatei fn_queryRequest.sqf

      23106-logo-schrift-dunkel-390-70-png class=

      Services rund um ArmA RPG Life

      ArmA Bibel: https://community.bistudio.com/wiki/

    • Azoni
      Schüler
      Reaktionen
      50
      Trophäen
      11
      Beiträge
      157
      Bilder
      1
      • 25. April 2016 um 20:09
      • #7

      Das ist die standart 3.1.4.8er , ich habe nur in der _query Abfrage rumgefuscht ^^

      Code
      /*
          File: fn_queryRequest.sqf
          Author: Bryan "Tonic" Boardwine
      
          Description:
          Handles the incoming request and sends an asynchronous query 
          request to the database.
      
          Return:
          ARRAY - If array has 0 elements it should be handled as an error in client-side files.
          STRING - The request had invalid handles or an unknown error and is logged to the RPT.
      */
      private["_uid","_side","_query","_return","_queryResult","_qResult","_handler","_thread","_tickTime","_loops","_returnCount"];
      _uid = [_this,0,"",[""]] call BIS_fnc_param;
      _side = [_this,1,sideUnknown,[civilian]] call BIS_fnc_param;
      _ownerID = [_this,2,ObjNull,[ObjNull]] call BIS_fnc_param;
      
      
      
      
      
      
      
      if(isNull _ownerID) exitWith {};
      _ownerID = owner _ownerID;
      
      
      
      
      
      
      
      /*
          _returnCount is the count of entries we are expecting back from the async call.
          The other part is well the SQL statement.
      */
      _query = switch(_side) do {
          case west: {_returnCount = 10; format["SELECT playerid, name, cash, bankacc, adminlevel, donatorlvl, cop_licenses, coplevel, cop_gear, blacklist FROM players WHERE playerid='%1'",_uid];};
          case civilian: {_returnCount = 10; format["SELECT playerid, name, cash, bankacc, adminlevel, donatorlvl, civ_licenses, arrested, civ_gear, test1 FROM players WHERE playerid='%1'",_uid];};
          case independent: {_returnCount = 9; format["SELECT playerid, name, cash, bankacc, adminlevel, donatorlvl, med_licenses, mediclevel, med_gear FROM players WHERE playerid='%1'",_uid];};
      };
      
      
      
      
      
      
      
      waitUntil{sleep (random 0.3); !DB_Async_Active};
      _tickTime = diag_tickTime;
      _queryResult = [_query,2] call DB_fnc_asyncCall;
      
      
      
      
      
      
      
      diag_log "------------- Client Query Request -------------";
      diag_log format["QUERY: %1",_query];
      diag_log format["Time to complete: %1 (in seconds)",(diag_tickTime - _tickTime)];
      diag_log format["Result: %1",_queryResult];
      diag_log "------------------------------------------------";
      
      
      
      
      
      
      
      if(typeName _queryResult == "STRING") exitWith {
          [[],"SOCK_fnc_insertPlayerInfo",_ownerID,false,true] spawn life_fnc_MP;
      };
      
      
      
      
      
      
      
      if(count _queryResult == 0) exitWith {
          [[],"SOCK_fnc_insertPlayerInfo",_ownerID,false,true] spawn life_fnc_MP;
      };
      
      
      
      
      
      
      
      //Blah conversion thing from a2net->extdb
      private["_tmp"];
      _tmp = _queryResult select 2;
      _queryResult set[2,[_tmp] call DB_fnc_numberSafe];
      _tmp = _queryResult select 3;
      _queryResult set[3,[_tmp] call DB_fnc_numberSafe];
      _tmp = _queryResult select 9;
      _queryResult set[9,[_tmp] call DB_fnc_numberSafe];
      
      
      
      
      
      
      
      //Parse licenses (Always index 6)
      _new = [(_queryResult select 6)] call DB_fnc_mresToArray;
      if(typeName _new == "STRING") then {_new = call compile format["%1", _new];};
      _queryResult set[6,_new];
      
      
      
      
      
      
      
      //Convert tinyint to boolean
      _old = _queryResult select 6;
      for "_i" from 0 to (count _old)-1 do
      {
          _data = _old select _i;
          _old set[_i,[_data select 0, ([_data select 1,1] call DB_fnc_bool)]];
      };
      
      
      
      
      
      
      
      _queryResult set[6,_old];
      
      
      
      
      
      
      
      _new = [(_queryResult select 8)] call DB_fnc_mresToArray;
      if(typeName _new == "STRING") then {_new = call compile format["%1", _new];};
      _queryResult set[8,_new];
      //Parse data for specific side.
      switch (_side) do {
          case west: {
              _queryResult set[9,([_queryResult select 9,1] call DB_fnc_bool)];
          };
      
          case civilian: {
              _queryResult set[7,([_queryResult select 7,1] call DB_fnc_bool)];
              _houseData = _uid spawn TON_fnc_fetchPlayerHouses;
              waitUntil {scriptDone _houseData};
              _queryResult pushBack (missionNamespace getVariable[format["houses_%1",_uid],[]]);
              _gangData = _uid spawn TON_fnc_queryPlayerGang;
              waitUntil{scriptDone _gangData};
              _queryResult pushBack (missionNamespace getVariable[format["gang_%1",_uid],[]]);
          };
      };
      
      
      
      
      
      
      
      _keyArr = missionNamespace getVariable [format["%1_KEYS_%2",_uid,_side],[]];
      _queryResult set[12,_keyArr];
      
      
      
      
      
      
      
      [_queryResult,"SOCK_fnc_requestReceived",_ownerID,false] spawn life_fnc_MP;
      Alles anzeigen

      Eat Sleep Code Repeat

    • B4v4r!4n_Str!k3r
      Nerd
      Reaktionen
      246
      Trophäen
      11
      Beiträge
      725
      Bilder
      5
      • 25. April 2016 um 20:45
      • #8

      Ok es liegt wie vermutet am Index: da du nun im case civilian test1 am Index 9 hast, musst du in deiner fn_requestReceived.sqf den Index von den Häusern und der Gang jeweils um eins erhöhen.

      Sprich so:

      Code
      case civilian: {
       life_is_arrested = _this select 7;
       __CONST__(life_coplevel, 0);
       __CONST__(life_medicLevel, 0);
       life_houses = _this select 10;
       {
       _house = nearestBuilding (call compile format["%1", _x select 0]);
       life_vehicles pushBack _house;
       } foreach life_houses;
       
       life_test1 = parseNumber (_this select 9);
       
       life_gangData = _This select 11;
       if(count life_gangData != 0) then {
       [] spawn life_fnc_initGang;
       };
       [] spawn life_fnc_initHouses;
       };
      Alles anzeigen

      23106-logo-schrift-dunkel-390-70-png class=

      Services rund um ArmA RPG Life

      ArmA Bibel: https://community.bistudio.com/wiki/

    • nox 25. März 2023 um 00:47

      Hat das Thema aus dem Forum Hilfeforum - ArmA 3 nach Archiv verschoben.

    Registrieren oder Einloggen

    Du bist noch kein Mitglied von NodeZone.net? Registriere dich kostenlos und werde Teil einer großartigen Community!

    Registrieren

    Ähnliche Themen

    • Seperate Konten Feuerwehr/Cops/Zivis bitte hilfe 5.0

      • BerkoCelo
      • 13. August 2017 um 21:40
      • Hilfeforum
    • Server stürzt ab

      • movetoqt
      • 18. August 2017 um 23:58
      • Hilfeforum
    • PayChecks nachricht spamt server voll

      • BerkoCelo
      • 17. August 2017 um 16:42
      • Hilfeforum
    • Position Speicherung RPG Log wird gesprengt

      • JohnnyWalker
      • 12. August 2017 um 18:33
      • Hilfeforum
    • Arma 3 crasht bei Server Beitritt

      • MadniX
      • 12. Juni 2017 um 07:47
      • Hilfeforum

    Wichtige Links & Informationen

    Server & Hosting-Ressourcen

      Server Administration & Hosting Basics

      Windows Server Support & Guides

      Linux Server Configuration & Help

      Setting up TeamSpeak 3 & VoIP Servers

      Domains & Web Hosting for Beginners & Professionals

      Cloud Hosting, Docker & Kubernetes Tutorials

    Gameserver & Modding-Ressourcen

      ArmA 3 Tutorials & Script Collection

      Renting & Operating Gameservers

      DayZ Server Management & Help

      FiveM (GTA V) Server & Script Development

      Rust Server Modding & Administration

      Setting up & Optimizing ARK Survival Servers

    NodeZone.net – Deine Community für Gameserver, Server-Hosting & Modding

      NodeZone.net ist dein Forum für Gameserver-Hosting, Rootserver, vServer, Webhosting und Modding. Seit 2015 bietet unsere Community eine zentrale Anlaufstelle für Server-Admins, Gamer und Technikbegeisterte, die sich über Server-Management, Hosting-Lösungen und Spielemodding austauschen möchten.


      Ob Anleitungen für eigene Gameserver, Hilfe bei Root- und vServer-Konfigurationen oder Tipps zu Modding & Scripting – bei uns findest du fundiertes Wissen und praxisnahe Tutorials. Mit einer stetig wachsenden Community findest du hier Antworten auf deine Fragen, Projektpartner und Gleichgesinnte für deine Gaming- und Serverprojekte. Schließe dich NodeZone.net an und werde Teil einer aktiven Community rund um Server-Hosting, Gameserver-Management und Modding-Ressourcen.

    Wer jetzt nicht teilt ist selber Schuld:
    1. Nutzungsbestimmungen
    2. Datenschutzerklärung
    3. Impressum
    4. Urheberrechts- oder Lizenzverstoß melden
  • Trimax Design coded & layout by Gino Zantarelli 2023-2025©
    Community-Software: WoltLab Suite™