Problem mit Stocks (MYSQL)

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Schönen guten Abend,


    ich habe ein Problem mit diesem Stock. Er gibt mir diesen Warning wieder:


    Warning 213: tag mismatch


    In diesem stock:


    stock LoadFrak()
    {
    new query[250],sstring[100];
    format(query,sizeof(query),"SELECT * FROM `Fraktionen` WHERE id = '%d'",FrakInfo[FID]); // <- Diese Zeile
    mysql_query(query);
    mysql_store_result();
    while(mysql_fetch_row(sstring))
    {
    // s = string f = float i = intgr
    sscanf(sstring,"e<p<|>iffffffiis[12]s[12]s[12]s[12]s[12]s[12]i",FrakInfo);//FrakInfo[FID],FrakInfo[BaseEnterX],FrakInfo[BaseEnterY],FrakInfo[BaseEnterZ],FrakInfo[BaseExitX],FrakInfo[BaseExitY],FrakInfo[BaseExitZ],FrakInfo[Virtualworld],FrakInfo[Intid],FrakInfo[Rang1],FrakInfo[Rang2],FrakInfo[Rang3],FrakInfo[Rang4],FrakInfo[Rang5],FrakInfo[Rang6],FrakInfo[Bank]);
    mysql_free_result();
    }
    return 1;
    }


    // EDIT: Problem hat sich komplett geändert.

    2 Mal editiert, zuletzt von K3V1N ()

  • Zum einen wissen wir nicht wie dein array
    FrakInfo aufgebaut ist


    zum zweiten wird zuletzt nix raus kommen da erstens dein string für solch eine datenmenge zu klein sein wird(obwohl ist grenzwertig).
    und zum zweiten du ein fehler in deiner splitt reihenfolge hast besser gesagt es fehlt ein Zeichen >.


    Am besten machst du dich erstmal mit sscanf und mysql vertraut bevor du ihrgend eine copy paste scheiße zusammen schreibst

  • Zum einen wissen wir nicht wie dein array
    FrakInfo aufgebaut ist


    zum zweiten wird zuletzt nix raus kommen da erstens dein string für solch eine datenmenge zu klein sein wird(obwohl ist grenzwertig).
    und zum zweiten du ein fehler in deiner splitt reihenfolge hast besser gesagt es fehlt ein Zeichen >.


    Am besten machst du dich erstmal mit sscanf und mysql vertraut bevor du ihrgend eine copy paste scheiße zusammen schreibst


    Ich habe mir das nicht mit Copa paste zusammengeschmissen ! Das hat mir @[DT]Nightstr3m: geschrieben.


    So wieder der Array erstellt.


    new FrakInfo[][FraktionsInfo] =
    {
    //{ID,Float:BaseEnterX,Float:BaseEnterY,Float:BaseEnterZ,Float:BaseExitX,Float:BaseExitY,Float:BaseExitZ,Virtualworld,Interior,Locked,Bank}
    {9,2495.3833,-1690.3215,14.7656,2495.9688,-1694.5864,1014.7422,0,3,0,"Rang1","Rang2","Rang3","Rang4","Rang5","Rang6",0}
    };


    Enum:


    enum FraktionsInfo
    {
    FID,
    Float:BaseEnterX,
    Float:BaseEnterY,
    Float:BaseEnterZ,
    Float:BaseExitX,
    Float:BaseExitY,
    Float:BaseExitZ,
    Virtualworld,
    Intid,
    Locked,
    Rang1[12],
    Rang2[12],
    Rang3[12],
    Rang4[12],
    Rang5[12],
    Rang6[12],
    Bank
    }


    stock LoadFrak()
    {
    new query[250],sstring[100];
    format(query,sizeof(query),"SELECT * FROM `Fraktionen` WHERE `id` = '%d'",FrakInfo[FID]);
    mysql_query(query);
    mysql_store_result();
    while(mysql_fetch_row(sstring))
    {
    // s = string f = float i = intgr
    sscanf(sstring,"e<p<|>iffffffiis[12]s[12]s[12]s[12]s[12]s[12]i>",FrakInfo);//FrakInfo[FID],FrakInfo[BaseEnterX],FrakInfo[BaseEnterY],FrakInfo[BaseEnterZ],FrakInfo[BaseExitX],FrakInfo[BaseExitY],FrakInfo[BaseExitZ],FrakInfo[Virtualworld],FrakInfo[Intid],FrakInfo[Rang1],FrakInfo[Rang2],FrakInfo[Rang3],FrakInfo[Rang4],FrakInfo[Rang5],FrakInfo[Rang6],FrakInfo[Bank]);
    mysql_free_result();
    }
    return 1;
    }


    > hinzugefügt 8)

  • Funktioniert so nicht. Bekomme error das id undefiniert ist 8)


    IPrototypeI:
    Bitte was ? Das versteh ich jetzt nicht ..


    ganz einfach deine Verwendung des 2D( Zweidimensionalen) Arrays ist Falsch. Zu dem ist stock nur ein zusätzlichen tag das beeinflusst nicht den Namen einer Funktion du kannst stock auch bei variabeln benutzen es signalisiert nur das es um kompiler nicht beachtet werden soll, sofern es nicht genutzt ist. Man sieht es ja meinstes wenn man eine funktion im skript stehen hat ohne den tag stock das der warning beim kompilen kommt das die funktion nicht genutzt wird.


    sieh dir das beispiel an
    Mysql Daten laden


  • ganz einfach deine Verwendung des 2D( Zweidimensionalen) Arrays ist Falsch. Zu dem ist stock nur ein zusätzlichen tag das beeinflusst nicht den Namen einer Funktion du kannst stock auch bei variabeln benutzen es signalisiert nur das es um kompiler nicht beachtet werden soll, sofern es nicht genutzt ist. Man sieht es ja meinstes wenn man eine funktion im skript stehen hat ohne den tag stock das der warning beim kompilen kommt das die funktion nicht genutzt wird.


    sieh dir das beispiel an
    Mysql Daten laden


    Das mit den Dimensionen ist ja okay, aber ich verstehe jetzt nicht genau wo der Fehler liegt. Bzw die Definierung meines Arrays ..