Beiträge von aytef

    "Ohne Fleiß, kein (P)reis"
    Im englischem sowie deutschem SA:MP Forum wirst du deine nötigen Ressourcen finden. :)
    Und wenn es um MySQL oder sowas geht, dann guck' einfach in den Includes nach. Dort befindet sich auch öfters die Version von den Plugins usw.

    Okay, der Fehler tretet bis jetzt nicht mehr auf. Eins würde ich aber noch fragen:
    "Ansonsten solltest du die Länge des Debug Ausgabe im MySQL Plugin erhöhen [...]" Wie soll das gehen, wenn ich fragen darf?

    Ich Idiot, gerade germerkt, dass ich auch noch was vergessen habe... :D


    Es trat ein neuer Fehler auf, @Mencent:

    Code
    CMySQLQuery::Execute[] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE UID = '0'' at line 1
     CMySQLResult::GetRowDataByName() - invalid row index ('0')
     cache_get_field_content_int - invalid datatype

    Hey, ich habe in meinen MySQL Logs folgendes gefunden und wollte wissen, was das Problem ist..:

    SQL
    [ERROR] CMySQLResult::GetRowDataByName() - invalid row index ('0')
    [ERROR] cache_get_field_content_int - invalid datatype
    
    
    oder 
    [14:50:08] [ERROR] CMySQLQuery::Execute[] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Owned = 0,Locked = 0,Price = 0,PosX = 0.000000,PosY = 0.000000,PosZ = 0.000000,I' at line 1


    Hier schon mal die UPDATE server_properties_furnitures

    Folgende Warnings:


    Code
    warning 219: local variable "modelid" shadows a variable at a preceding level
    warning 219: local variable "modelid" shadows a variable at a preceding level


    Zeilen

    public OnPlayerEditAttachedObject(playerid, response, index, modelid, boneid, Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fScaleX, Float:fScaleY, Float:fScaleZ)
    public OnPlayerSelectDynamicObject(playerid, objectid, modelid, Float:x, Float:y, Float:z)

    Schon wieder n' kleines Problem.
    Der Name im Label wird nicht angezeigt..



    3DLabel
    -
    format(ltext,128,"Garage von "#SERVERFARBE"%s "#HTML_WHITE"\nStatus: %s",SpielerName(gInfo[gid][Owner]),GetLockedStatus(gInfo[gid][Locked]));
    garageLabel[gid] = CreateDynamic3DTextLabel(ltext, WEISS, gInfo[gid][PosX],gInfo[gid][PosY],gInfo[gid][PosZ]+0.1,DD);


    SpielerName
    -
    stock SpielerName(playerid)
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    return name;
    }


    Wo Owner steht:
    -
    enum garageInfo{
    Owner[24],
    ...
    }


    Und wie der Name geladen wird:
    -
    for(new i = 0; i <= rows; i++)
    {
    gInfo[i][Owner] = cache_get_field_content(i,"Owner",gInfo[i][Owner],MySqlConnection);
    ...
    }

    Kleenes Problem.. wieder.. :D
    Ich wüsste jetzt nicht, was das Problem wäre.. D:




    Der Fehler:
    C:\Users\Atef Aloui\Desktop\Westside Stories\Serverskript\gamemodes\ws_selfmade.pwn(5187) : error 035: argument type mismatch (argument 3)


    Die Zeile:
    gInfo[i][Owner] = cache_get_field_content(i, "Owner",MySqlConnection);


    //Owner ist eine Spalte, wo der Name gespeichert bzw. geladen wird. Ich sah, dass "cache_get_field_content_int" dort stand. Aber es ist ja kein Integer sondern ein Name. Also Textausgabe.

    Öh, kleines Problem.
    Ich kriege einen Print etwa hundert mal ausgegeben, obwohl ich den eig. nur einmal brauche..



    public LoadGarages()
    {
    garageCount = 0;
    new rows, fields;
    cache_get_data(rows, fields);
    for(new i = 0; i <= rows; i++)
    {
    gInfo[i][Owner] = cache_get_field_content(i, "Owner",gInfo[i][Owner],MySqlConnection);
    gInfo[i][Owned] = cache_get_field_content_int(i, "Owned", MySqlConnection);
    ---
    }
    printf("SERVER » Garagen geladen %d/%i",garageCount-1,MAX_GARAGES);
    return 1;
    }


    Wo ich denke, was das Problem verursacht:
    for(new i = 0; i<MAX_GARAGES; i++){
    mysql_function_query(MySqlConnection, "SELECT * FROM `"#SQL_TAG"_garages` ORDER BY UID ASC", true, "LoadGarages", "", "");
    }

    Spoiler anzeigen
    Hey, ich habe schon vorher gefragt, wie das gehen sollte, dass ich eine "Funktion" die mit MySQL R5 geschrieben worden ist, auf R39 konvertiere.
    Habe dazu auch ein Thread bekommen, wie das gehen sollte, aber ich kriege es dennoch nicht hin.
    Das Problem bei mir ist, dass in dem Stock kein playerid oder ähnl. steht.
    Und weiß dann auch nicht, wie ich das dann richtig zum laufen kriege..

    Spoiler anzeigen
    Hier ist schon mal der Code der R5 Funktion

    stock Load_Garages()
    {
    garageCount = 1; //Debug-Garagen
    new sql[128] = "SELECT * FROM `garages`";
    new i;
    mysql_query(sql);
    mysql_store_result();
    while(mysql_fetch_row(sql))
    {
    sscanf(sql, "e<p<|>s[24]dddfffdd>", gInfo[i]);
    //printf("DEBUG: %s %d %d %d %f %f %f %d %d",gInfo[i][Owner],gInfo[i][Owned],gInfo[i][Locked],gInfo[i][Price],gInfo[i][PosX],gInfo[i][PosY],gInfo[i][PosZ],gInfo[i][Interior],gInfo[i][UID]);
    UpdateGarageInfo(i);
    garageCount++;
    i++;
    }
    mysql_free_result();
    return 1;
    }

    Spoiler anzeigen
    Und das Tutorial, was ich nachgehen sollte:
    http://forum.sa-mp.com/showthread.php?t=337810

    Spoiler anzeigen
    Es wäre echt nett, wenn mir jemand dabei helfen könnte. :)


    Hat sich geklärt! Habe die Informationen aus folgendem Thread entnommen: System umschreiben (MySQL R39-2)
    Ich bedanke mich nochmal herzlich bei Jeffry: :)

    Hey, ich wollte etwas was mit MySQL R5 ist auf R39 konventieren.


    Der R5 Code sieht so aus:

    stock Load_Garages()
    {
    garageCount = 1; //Debug-Garagen
    new sql[128] = "SELECT * FROM `garages`";
    new i;
    mysql_query(sql);
    mysql_store_result();
    while(mysql_fetch_row(sql))
    {
    sscanf(sql, "e<p<|>s[24]dddfffdd>", gInfo[i]);
    //printf("DEBUG: %s %d %d %d %f %f %f %d %d",gInfo[i][Owner],gInfo[i][Owned],gInfo[i][Locked],gInfo[i][Price],gInfo[i][PosX],gInfo[i][PosY],gInfo[i][PosZ],gInfo[i][Interior],gInfo[i][UID]);
    UpdateGarageInfo(i);
    garageCount++;
    i++;
    }
    mysql_free_result();
    return 1;
    }


    Leider habe ich damit keinen blassen Schimmer wie ich den Code auf R39 umwandle.. Bei anderen "Codeschnipsel" ging es wunderbar, aber da wüsste ich es garnicht..
    Es wäre nett, wenn einer mir das erklären würde, wie ich das jetzt machen könnte..