[Problem] beim Laden von MYSQL [Profis gefragt]

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
  • Guten Abend Breadfishler,


    Ich habe auch mal ein kleines Problem in bezug zwischen MYSQL und sscanf und zwar will der ganze spaß nicht laden
    und sehr viel finde ich auch nicht wirklich was mit weiter hilft.


    Also meine erste variante hatte funktioniert bis vor kurzem.

    if(mysql_fetch_row(resultline)){
    sscanf(resultline,"p<|>s[24]dddd",SpielerInfo[playerid][pName],SpielerInfo[playerid][pLevel],
    SpielerInfo[playerid][pGeld], SpielerInfo[playerid][pKills], SpielerInfo[playerid][pTode]);
    mysql_free_result();
    }
    jedoch etwas komisch da hier nix gesplittet wird.
    nun habe ich auch was anders probiert.


    new Query[200];
    GetPlayerName(playerid, SpielerInfo[playerid][pName], MAX_PLAYER_NAME);
    format(Query, sizeof(Query),"SELECT * FROM accounts WHERE Name='%s'",SpielerInfo[playerid][pName]);
    mysql_query(Query);
    mysql_store_result();
    mysql_fetch_row_format(Query, "|");
    sscanf(Query, "p<|>e<s[24]dddd>", SpielerInfo[playerid]);
    mysql_free_result();
    SpawnPlayer(playerid);


    new resultline[200], Query[200];
    GetPlayerName(playerid, SpielerInfo[playerid][pName], MAX_PLAYER_NAME);
    format(Query, sizeof(Query), "SELECT `Name` FROM `accounts` WHERE `Name` = '%s'",SpielerInfo[playerid][pName]);
    mysql_query(Query);
    mysql_store_result();
    while(mysql_fetch_row(Query,"|"))
    {
    sscanf(resultline, "p<|>e<s[24]dddd>", SpielerInfo[playerid]);
    mysql_free_result();
    }


    aber der Spaß geht nicht ich hab mir das Tutorial script von maddin runtergeladen um das zu testen das einzigste was mir einfallen würde dazu ,
    wäre das die Verwendung von der Formatierung falsch ist, jedoch habe ich das auch schon probiert und es geht trotzdem nicht.
    hat jemand eine idee dazu.


    Ps: Tut mir Leid wenn ich mit dem Problem paar Adminstartoren auf die Nerven gegangen bin. :thumbup:


    /edit hat sich erledigt bin selbst auf was gestoßen an was es liegt

  • Ich weiß, dass diese Antwort jetzt nicht deiner Vorstellung entspricht. Aber ich rate dir wirklich von ganzem Herzen: benutze das neuste MySQL Plugin und scripte diese Funktionen um. Du wirst dir einiges an Arbeit und vorallem Zeit sparen, auch für die Zukunft gesehen.


    Beim neuen MySQL musst du nicht großartig mit sscanf die Antwort des Queries auseinanderrupfen, sondern kannst schon per cache_get_field_content deine Werte auslesen. ;)


    Hier auch nochmal ein Tutorial für das Umschreiben deines Codes:
    http://forum.sa-mp.com/showthread.php?t=337810



    Das Umschreiben bringt dir wirklich mehr als dich jetzt mit den Fehlern bzw. Unkomfortabilität der alten Version auseinander zu setzen!

  • Ich rate Dir sowieso generell von SSCANF ab. Die Abfragen sind einfach zu lange. Benutze es wie es eigentlich auch vorgesehen worden ist ohne SSCANF.


    Was faselst du da?
    es ist doch relativ ob er es mit sscanf macht oder nicht
    es kommt das selbe bei raus


    @TE
    lass den mal den namen anders auslesen
    z.B.
    den Mr.Monat stock SpielerName
    ich vermute der fehler liegt da

  • Naja, es ist um einiges umständlicher ;)


    Ganz im gegenteil
    wenn man als anfänger an MySQL ist dann ist es das einfachste
    wenn ich jetzt meine methode posten würde dann wüsstest du nix davopn was ich gemacht habe