Beiträge von DJ Deagle

    Befinden sich denn überhaupt irgendwelche Daten in der Tabelle Misc? :huh:


    Code
    [10:16:01] >> mysql_query( Connection handle: 1 )
    [10:16:01] CMySQLHandler::Query(UPDATE `Misc` SET `Spielerrekord` = '0', `Joepreis` = '0', `Josepreis` = '0') - Successfully executed.


    Immer wenn ich den Server stoppe wird das ganze gespeichert.
    Auch nach mehrmaligen stoppen und starten wird kein Datensatz angezeigt.

    Hallo,


    ich habe eine MySQL-Tabelle für Daten wie z.B. Spielerrekord, usw erstellt, welche sich `Misc` nennt. Leider wird beim Start des Servers nicht aus dieser Tabelle ausgelesen.
    Hier der Code:
    mysql_query("SELECT * FROM `Misc`");
    mysql_store_result();
    while(mysql_retrieve_row()) {
    print("retrieve");
    mysql_fetch_field_row(str,"Spielerrekord");
    sInfo[Spielerrekord] = strval(str);
    mysql_fetch_field_row(str,"Joepreis");
    sInfo[Joepreis] = strval(str);
    mysql_fetch_field_row(str,"Josepreis");
    sInfo[Josepreis] = strval(str);
    printf("%d",sInfo[Spielerrekord]);
    }
    mysql_free_result();
    Hier natürlich auch die dazugehörigen Logs (server und mysql):

    Code
    [10:05:10] Number of vehicle models: 3
    [10:05:10] Incoming connection: 127.0.0.1:57319
    [10:05:10] Incoming connection: 127.0.0.1:45589
    [10:05:11] [npc:join] Joe has joined the server (0:127.0.0.1)
    [10:05:11] [npc:join] Jose has joined the server (1:127.0.0.1)
    [10:05:20] Server password has been removed.


    Code
    [10:05:10] >> mysql_query( Connection handle: 1 )
    [10:05:10] CMySQLHandler::Query(SELECT * FROM `Misc`) - Successfully executed.
    [10:05:10] >> mysql_store_result( Connection handle: 1 )
    [10:05:10] CMySQLHandler::StoreResult() - Result was stored.
    [10:05:10] >> mysql_retrieve_row( Connection handle: 1 )
    [10:05:10] >> mysql_free_result( Connection handle: 1 )
    [10:05:10] CMySQLHandler::FreeResult() - Result was successfully free'd.


    Die Tabelle wird wiefolgt erstellt:

    SQL
    CREATE TABLE IF NOT EXISTS `Misc` (
    `Spielerrekord` int(11) NOT NULL,
    `Joepreis` int(11) NOT NULL,
    `Josepreis` int(11) NOT NULL);


    Allerdings zeigt auch das phpmyadmin welches ich benutze in der Tabelle keine Datensätze an.


    Wo ist da der Wurm drin? Jeffry: ??


    lg
    Deagle.

    Also.


    pin[5] Kann eigentlich zu pin[4] geändert werden, da du ja nur 4 Ziffern erstellst.


    Zum eigentlichen Problem: Du formatierst einen Integer mit einem Stringformat.
    Bedeutet: new ktnr[10]; Behebt diesen Error.
    Das selbe bei newpin. Dann natürlich bei der Message, die gesendet wird (Ihre Pin: %d) => ändern zu "Ihre Pin: %s".
    Ich hoffe es ist einigermaßen verständlich :D


    Beides zusammen packen, den einen Public der leer ist löschen.

    Abgesehen von den tausend Rechtschreibfehlern glaube ich nicht, dass ihr so einen Mapper finden werdet.
    Das Impressum der Website ist auch nicht nach §5 TMG. ausgefüllt..


    Aber wenn ich mal so fragen darf, wie "gut" müssen denn die Referenzen für euch sein?

    Es macht wenig Sinn wenn du das gesamte Zeug aus der Datenbank lädst, aber gar nicht brauchst.


    ocmd:carlist(playerid,params[])
    {
    new q[256],str[256],all[512];
    GetPlayerName(playerid,sendername,sizeof sendername);
    format(q,sizeof q,"SELECT `ID`,`Status`,`Model` FROM `Playercars` WHERE `Owner` = '%s'",sendername);
    mysql_query(q);
    mysql_store_result();
    while(mysql_fetch_row(str)) {
    new c,st,md;
    for(new i;i<MAX_LISTITEMS;i++) {
    c=i;
    }
    sscanf(str,"e<p<|>ddd>",pvcdbID[code=c],st,md);
    format(all,sizeof all,"%s{FFFFFF}%s (%s)\n",all,PlayerVehicle[md],(st) ? ("{FF0000}Defekt{FFFFFF}") : ("{00FF00}Nicht defekt{FFFFFF}"));
    }
    mysql_free_result();
    if(strlen(all) > 0) {
    ShowPlayerDialog(playerid,DLG_CARLIST,DIALOG_STYLE_LIST,"Fahrzeugliste",all,"Auswählen","Schließen");
    } else {
    SendClientMessage(playerid,COLOR_LIGHTRED,"Du besitzt keine Fahrzeuge!");
    }
    return 1;
    }
    Es wird immer folgendes Ausgegeben:

    Code
    Landstalker (Nicht defekt)

    ..
    Das wird aus der Datenbank gezogen:

    SQL
    [19:16:15] CMySQLHandler::StoreResult() - Result was stored.
    [19:16:15] >> mysql_fetch_row_format( Connection handle: 1 )
    [19:16:15] CMySQLHandler::FetchRow() - Return: 1|0|411
    [19:16:15] >> mysql_fetch_row_format( Connection handle: 1 )
    [19:16:15] CMySQLHandler::FetchRow() - Return: 2|1|411
    [19:16:15] >> mysql_fetch_row_format( Connection handle: 1 )
    [19:16:15] >> mysql_free_result( Connection handle: 1 )
    [19:16:15] CMySQLHandler::FreeResult() - Result was successfully free'd.


    Was ist fail?

    Hi,


    ich habe mir einen /carlist-Befehl erbastelt, welcher alle Fahrzeuge des bestimmten Spielers aus der Datenbank ausliest.
    Leider bekomme ich im Spiel immer einen leeren Dialog angezeigt.


    Folgender Code:
    ocmd:carlist(playerid,params[])
    {
    new q[256],str[256],all[512];
    GetPlayerName(playerid,sendername,sizeof sendername);
    format(q,sizeof q,"SELECT * FROM `Playercars` WHERE `Owner` = '%s'",sendername);
    mysql_query(q);
    mysql_store_result();
    while(mysql_fetch_row(str)) {
    new c,st,md,np[20];
    for(new i;i<MaxVehikel;i++) {
    if(!pCarInfo[i][cCreated])continue;
    c=i;
    }
    sscanf(str,"e<p<|>dd{ds[24]ffff}d{dddfdddddddddddddd}s[20]{fd}>",pvcdbID[code=c],st,md,np);
    format(all,sizeof all,"%s{FFFFFF}%s (%s)\n",all,PlayerVehicle[md],(st) ? ("{FF0000}Defekt{FFFFFF}") : ("{00FF00}Nicht defekt{FFFFFF}"));
    }
    if(strlen(all) > 0) {
    ShowPlayerDialog(playerid,DLG_CARLIST,DIALOG_STYLE_LIST,"Fahrzeugliste",all,"Auswählen","Schließen");
    } else {
    SendClientMessage(playerid,COLOR_LIGHTRED,"Du besitzt keine Fahrzeuge!");
    }
    mysql_free_result();
    return 1;
    }
    Es stehen 2 Fahrzeuge auf meinen Namen in der Datenbank.
    Woran liegt es, dass es nicht klappt? Jeffry:


    lg
    Deagle