dir ist klar das strcat keine parameter hat wie format ne?
strcat fügt strings zusammen und erstellt sie nicht
MYSQL, so oder so?
- M_McGarrett
- Geschlossen
- Erledigt
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
-
-
wie mach ich das dann? ich bin total durcheinander...
//edit
Wie mache ich das nun im Format und mit diesem dämlcihen strcat?
-
MySQL | Schonender speichern
Hatte die gleiche Frage als ich angefangen habe mit mysql, guck dir den Thread einfach an -
Also nun so ;)?
new query[900], stringzusammen[1024];
format(query,sizeof query,"UPDATE accounts id='%d' Level='%d' Geld='%.f2' Kills='%d' Tode='%d' Health='%.f0' HatRegi='%d' Alter='%d' Geschlecht='%d' Land='%d' Mission='%d' Noobmietet='%d' HatGeld='%d' Handy='%d' HandyVer='%d' SMSFrei='%d' FreiMin='%d' Guthaben='%.f2' Nummer='%d' Autover='%d' Perso='%d Lebenver='%d' Akku='%d' Payday='%d Handyart='%d'",
SInfo[playerid][pid],SInfo[playerid][pLevel],SInfo[playerid][pGeld],SInfo[playerid][pKills],SInfo[playerid][pTode],SInfo[playerid][pHealth],SInfo[playerid][pHatRegi], SInfo[playerid][pAlter],SInfo[playerid][pGeschlecht],SInfo[playerid][pLand],SInfo[playerid][pMission],SInfo[playerid][pNoobmietet],SInfo[playerid][pHatGeld],SInfo[playerid][pHandy],
SInfo[playerid][pHandyVer],SInfo[playerid][pSMSFrei],SInfo[playerid][pFreiMin],SInfo[playerid][pGuthaben],SInfo[playerid][pNummer],SInfo[playerid][pAutover], SInfo[playerid][pPerso],SInfo[playerid][pLebenver],SInfo[playerid][pAkku],SInfo[playerid][pPayday],SInfo[playerid][pHandyart]);
strcat(stringzusammen,query);
strdel(query,0,sizeof(query));format(query,sizeof query,"Admin='%d' Leader='%d Member='%d' Skin='%d' Knastzeit='%d Wanted='%d' Knast='%d' pBootschein='%d pHelischein='%d' pMotorradschein='%d pLKWschein='%d' pRollerschein='%d' pAutoschein='%d Bankkonto='%.f2' Kreditpayday='%d' Kredit='%.f2 Job='%d'",
SInfo[playerid][pAdmin],SInfo[playerid][pLeader], SInfo[playerid][pMember],SInfo[playerid][pSkin],SInfo[playerid][pKnastzeit],SInfo[playerid][pWanted],SInfo[playerid][pKnast], SInfo[playerid][pBootschein], SInfo[playerid][pHelischein],
SInfo[playerid][pMotorradschein],SInfo[playerid][pLKWschein],SInfo[playerid][pRollerschein],SInfo[playerid][pAutoschein],SInfo[playerid][pBankkonto],SInfo[playerid][pKreditpayday],SInfo[playerid][pKredit],SInfo[playerid][pJob]);
strcat(stringzusammen,query);
strdel(query,0,sizeof(query));
mysql_query(stringzusammen);
strdel(stringzusammen,0,sizeof(stringzusammen));
mysql_free_result();//edit speichert sich immer noch nicht
-
-
UPDATE `blabal` SET `bla` = 'Wert' WHERE `blau` = 'WERT'
Wenn dann so.
Das habe Ich dem aber auch schon x mal in meine Post gesagt. -
new query[900], stringzusammen[1024];
format(query,sizeof query,"UPDATE ´accounts´ SET `Name`='%s', ´id´='%d', ´Level´='%d', ´Geld´='%.f2', ´Kills´='%d', ´Tode´='%d', ´Health´='%.f0', ´HatRegi´='%d', ´Alter´='%d', ´Geschlecht´='%d', ´Land´='%d', ´Mission´='%d', ´Noobmietet´='%d', ´HatGeld´='%d', ´Handy´='%d', ´HandyVer´='%d', ´SMSFrei´='%d', ´FreiMin´='%d', ´Guthaben´='%.f2', ´Nummer´='%d', ´Autover´='%d', ´Perso´='%d', ´Lebenver´='%d', ´Akku´='%d', ´Payday´='%d', ´Handyart´='%d',",
SInfo[playerid][pid],SInfo[playerid][pLevel],SInfo[playerid][pGeld],SInfo[playerid][pKills],SInfo[playerid][pTode],SInfo[playerid][pHealth],SInfo[playerid][pHatRegi], SInfo[playerid][pAlter],SInfo[playerid][pGeschlecht],SInfo[playerid][pLand],SInfo[playerid][pMission],SInfo[playerid][pNoobmietet],SInfo[playerid][pHatGeld],SInfo[playerid][pHandy],
SInfo[playerid][pHandyVer],SInfo[playerid][pSMSFrei],SInfo[playerid][pFreiMin],SInfo[playerid][pGuthaben],SInfo[playerid][pNummer],SInfo[playerid][pAutover], SInfo[playerid][pPerso],SInfo[playerid][pLebenver],SInfo[playerid][pAkku],SInfo[playerid][pPayday],SInfo[playerid][pHandyart]);
strcat(stringzusammen,query);
strdel(query,0,sizeof(query));
format(query,sizeof query,"Admin='%d', ´Leader´='%d', ´Member´='%d', ´Skin´='%d', ´Knastzeit´='%d', ´Wanted´='%d', ´Knast´='%d', ´pBootschein´='%d', ´pHelischein´='%d', ´pMotorradschein´='%d', ´pLKWschein´='%d', ´pRollerschein´='%d', ´pAutoschein´='%d', ´Bankkonto´='%.f2', ´Kreditpayday´='%d', ´Kredit´='%.f2', ´Job´='%d'",
SInfo[playerid][pAdmin],SInfo[playerid][pLeader], SInfo[playerid][pMember],SInfo[playerid][pSkin],SInfo[playerid][pKnastzeit],SInfo[playerid][pWanted],SInfo[playerid][pKnast], SInfo[playerid][pBootschein], SInfo[playerid][pHelischein],
SInfo[playerid][pMotorradschein],SInfo[playerid][pLKWschein],SInfo[playerid][pRollerschein],SInfo[playerid][pAutoschein],SInfo[playerid][pBankkonto],SInfo[playerid][pKreditpayday],SInfo[playerid][pKredit],SInfo[playerid][pJob]);
strcat(stringzusammen,query);
strdel(query,0,sizeof(query));
mysql_query(stringzusammen);
strdel(stringzusammen,0,sizeof(stringzusammen));
mysql_free_result();GEHT nicht...
-
GEHT nicht...
Dann schalte edn MySQL Debug ein und poste uns den MySQl Log... -
Da fehlt dir immer noch WHERE !!
Ließt du absichtlich an den Lösungen vorbei ?format(query,sizeof(query),"WHERE `ID`='%i'",SInfo[playerid][ID]); //oder wie du es hast.
strcat(stringzusammen,query); -
Habe vergessen den namen zu setzen... hab das gemacht und geprintet:
new query[900], stringzusammen[1024];
GetPlayerName(playerid,pname,sizeof(pname));
format(query,sizeof query,"UPDATE ´accounts´ SET `Name`='%s', ´id´='%d', ´Level´='%d', ´Geld´='%.f2', ´Kills´='%d', ´Tode´='%d', ´Health´='%.f0', ´HatRegi´='%d', ´Alter´='%d', ´Geschlecht´='%d', ´Land´='%d', ´Mission´='%d', ´Noobmietet´='%d', ´HatGeld´='%d', ´Handy´='%d', ´HandyVer´='%d', ´SMSFrei´='%d', ´FreiMin´='%d', ´Guthaben´='%.f2', ´Nummer´='%d', ´Autover´='%d', ´Perso´='%d', ´Lebenver´='%d', ´Akku´='%d', ´Payday´='%d', ´Handyart´='%d',",
pname,SInfo[playerid][pid],SInfo[playerid][pLevel],SInfo[playerid][pGeld],SInfo[playerid][pKills],SInfo[playerid][pTode],SInfo[playerid][pHealth],SInfo[playerid][pHatRegi], SInfo[playerid][pAlter],SInfo[playerid][pGeschlecht],SInfo[playerid][pLand],SInfo[playerid][pMission],SInfo[playerid][pNoobmietet],SInfo[playerid][pHatGeld],SInfo[playerid][pHandy],
SInfo[playerid][pHandyVer],SInfo[playerid][pSMSFrei],SInfo[playerid][pFreiMin],SInfo[playerid][pGuthaben],SInfo[playerid][pNummer],SInfo[playerid][pAutover], SInfo[playerid][pPerso],SInfo[playerid][pLebenver],SInfo[playerid][pAkku],SInfo[playerid][pPayday],SInfo[playerid][pHandyart]);
printf("%s",query);
strcat(stringzusammen,query);
strdel(query,0,sizeof(query));
format(query,sizeof query,"Admin='%d', ´Leader´='%d', ´Member´='%d', ´Skin´='%d', ´Knastzeit´='%d', ´Wanted´='%d', ´Knast´='%d', ´pBootschein´='%d', ´pHelischein´='%d', ´pMotorradschein´='%d', ´pLKWschein´='%d', ´pRollerschein´='%d', ´pAutoschein´='%d', ´Bankkonto´='%.f2', ´Kreditpayday´='%d', ´Kredit´='%.f2', ´Job´='%d'",
SInfo[playerid][pAdmin],SInfo[playerid][pLeader], SInfo[playerid][pMember],SInfo[playerid][pSkin],SInfo[playerid][pKnastzeit],SInfo[playerid][pWanted],SInfo[playerid][pKnast], SInfo[playerid][pBootschein], SInfo[playerid][pHelischein],
SInfo[playerid][pMotorradschein],SInfo[playerid][pLKWschein],SInfo[playerid][pRollerschein],SInfo[playerid][pAutoschein],SInfo[playerid][pBankkonto],SInfo[playerid][pKreditpayday],SInfo[playerid][pKredit],SInfo[playerid][pJob]);
printf("%s",query);
strcat(stringzusammen,query);
strdel(query,0,sizeof(query));
mysql_query(stringzusammen);
printf("%s",stringzusammen);
strdel(stringzusammen,0,sizeof(stringzusammen));
mysql_free_result();In der Log kam:
[14:05:46] UPDATE ´accounts´ SET `Name`='Danny', ´id´='227', ´Level´='1', ´Geld´='50151.6171872', ´Kills´='0', ´Tode´='0', ´Health´='0.0000000', ´HatRegi´='1', ´Alter´='15', ´Geschlecht´='2', ´Land´='1', ´Mission´='1', ´Noobmietet´='1', ´HatGeld´='0', ´Handy´='1', ´HandyVer´='1', ´SMSFrei´='0', ´FreiMin´='10', ´Guthaben´='41.2299992', ´Nummer´='8972', ´Autover´='0', ´Perso´='0', ´Lebenver´='0', ´Akku´='-1', ´Payday´='38', ´Handyart´='8',
[14:05:46] Admin='4', ´Leader´='1', ´Member´='0', ´Skin´='188', ´Knastzeit´='0', ´Wanted´='0', ´Knast´='0', ´pBootschein´='0', ´pHelischein´='0', ´pMotorradschein´='0', ´pLKWschein´='0', ´pRollerschein´='0', ´pAutoschein´='0', ´Bankkonto´='30000.0000002', ´Kreditpayday´='24', ´Kredit´='1250.0000002', ´Job´='0'
[14:05:46] UPDATE ´accounts´ SET `Name`='Danny', ´id´='227', ´Level´='1', ´Geld´='50151.6171872', ´Kills´='0', ´Tode´='0', ´Health´='0.0000000', ´HatRegi´='1', ´Alter´='15', ´Geschlecht´='2', ´Land´='1', ´Mission´='1', ´Noobmietet´='1', ´HatGeld´='0', ´Handy´='1', ´HandyVer´='1', ´SMSFrei´='0', ´FreiMin´='10', ´Guthaben´='41.2299992', ´Nummer´='8972', ´Autover´='0', ´Perso´='0', ´Lebenver´='0', ´Akku´='-1', ´Payday´='38', ´Handyart´='8',Admin='4', ´Leader´='1', ´Member´='0', ´Skin´='188', ´Knastzeit´='0', ´Wanted´='0', ´Knast´='0', ´pBootschein´='0', ´pHelischein´='0', ´pMotorradschein´='0', ´pLKWschein´='0', ´pRollerschein´='0', ´pAutoschein´='0', ´Bankkonto´='30000.0000002', ´Kreditpayday´='24', ´Kredit´='1250.0000002', ´Job´='0'
[14:05:46] [part] Danny has left the server (3:1)Speichern tut sich aber nichts...
-
Speichern tut sich aber nichts...
Lass es per MySQL Debug ausgeben was er da macht nicht per print...
tipp:
mysql_debug(true) unter OnGameModeInit reinDesweiteren nutz WHERE am ende ansonsten werden alle Tabelleninhalte überschrieben
-
Ich verstehe das mit dem Where nicht?
Ich habs unter ongamemode eingefügt und was passiert da jetzt?
Ich sehe nix...
-
-
Was ist denn das für ein MIST hier!?
Ich soll das durchlesen und checke das noch weniger als die SA:MP Tutorials... ich habs durchgelesen und checke es immer noch nicht...
Das Where hab ich eingebunden und klappt nicht!
´Job´='%d' WHERE ´id´='%d'",
SInfo[playerid][pJob],SInfo[playerid][pid] -
Tja, dann hast du dir nicht alles durchgelesen, mit der id bei WHERE wird nicht die Spielerid gemeint sinder die Userid, die ID die in der Datenbank steht womit du ihn auch zuweisen kannst.
Zeig uns doch mal deine Datenbank, vielleicht hast du da Ja auch was falsch.
-
#edit
ich habe ein problem,
wieso tut sich hier nix laden!?
stock LoadPlayer(playerid){
if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
{
new query[128], var[20];
GetPlayerName(playerid, pname, sizeof(pname));
format(query,sizeof (query),"SELECT * FROM `accounts` WHERE `id`='%d'",mysql_get_field("id", var));
mysql_query(query);
mysql_store_result();
mysql_get_field("id", var); SInfo[playerid][pid] = strval(var);
mysql_get_field("Level", var); SInfo[playerid][pLevel] = strval(var);
mysql_get_field("Geld", var); SInfo[playerid][pGeld] = floatstr(var);
mysql_get_field("Kills", var); SInfo[playerid][pKills] = strval(var);
mysql_get_field("Tode", var); SInfo[playerid][pTode] = strval(var);
mysql_get_field("HatRegi", var); SInfo[playerid][pHatRegi] = strval(var);
mysql_get_field("Alter", var); SInfo[playerid][pAlter] = strval(var);
mysql_get_field("Geschlecht", var); SInfo[playerid][pGeschlecht] = strval(var);
mysql_get_field("Land", var); SInfo[playerid][pLand] = strval(var);
mysql_get_field("Mission", var); SInfo[playerid][pMission] = strval(var);
mysql_get_field("Noobmietet", var); SInfo[playerid][pNoobmietet] = strval(var);
mysql_get_field("HatGeld", var); SInfo[playerid][pHatGeld] = strval(var);
mysql_get_field("Handy", var); SInfo[playerid][pHandy] = strval(var);
mysql_get_field("HandyVer", var); SInfo[playerid][pHandyVer] = strval(var);
mysql_get_field("SMSFrei", var); SInfo[playerid][pSMSFrei] = strval(var);
mysql_get_field("FreiMin", var); SInfo[playerid][pFreiMin] = strval(var);
mysql_get_field("Guthaben", var); SInfo[playerid][pGuthaben] = floatstr(var);
mysql_get_field("Nummer", var); SInfo[playerid][pNummer] = strval(var);
mysql_get_field("Autover", var); SInfo[playerid][pAutover] = strval(var);
mysql_get_field("Lebenver", var); SInfo[playerid][pLebenver] = strval(var);
mysql_get_field("Payday", var); SInfo[playerid][pPayday] = strval(var);
mysql_get_field("Akku", var); SInfo[playerid][pAkku] = strval(var);
mysql_get_field("Handyart", var); SInfo[playerid][pHandyart] = strval(var);
mysql_get_field("Admin", var); SInfo[playerid][pAdmin] = strval(var);
mysql_get_field("Leader", var); SInfo[playerid][pLeader] = strval(var);
mysql_get_field("Member", var); SInfo[playerid][pMember] = strval(var);
mysql_get_field("Skin", var); SInfo[playerid][pSkin] = strval(var);
mysql_get_field("Knastzeit", var); SInfo[playerid][pKnastzeit] = strval(var);
mysql_get_field("Wanted", var); SInfo[playerid][pWanted] = strval(var);
mysql_get_field("Knast", var); SInfo[playerid][pKnast] = strval(var);
mysql_get_field("pAutoschein", var); SInfo[playerid][pAutoschein] = strval(var);
mysql_get_field("pRollerschein", var); SInfo[playerid][pRollerschein] = strval(var);
mysql_get_field("pLKWschein", var); SInfo[playerid][pLKWschein] = strval(var);
mysql_get_field("pMotorradschein", var); SInfo[playerid][pMotorradschein] = strval(var);
mysql_get_field("pHelischein", var); SInfo[playerid][pHelischein] = strval(var);
mysql_get_field("pBootschein", var); SInfo[playerid][pBootschein] = strval(var);
mysql_get_field("Bankkonto", var); SInfo[playerid][pBankkonto] = floatstr(var);
mysql_get_field("Kredit", var); SInfo[playerid][pKredit] = floatstr(var);
mysql_get_field("Kreditpayday", var); SInfo[playerid][pKreditpayday] = strval(var);
mysql_get_field("Job", var); SInfo[playerid][pJob] = strval(var);
mysql_free_result();
if(SInfo[playerid][pNummer] == 0){SInfo[playerid][pNummer] = SInfo[playerid][pid]+8745;}
if(mysql_CheckCar(playerid) == 0){CreateCar(playerid);}
else if(mysql_CheckCar(playerid) == 1){LoadCars(playerid);}
}
return 1;
}LG
muss ich das vllt auch in ein format oder so setzen, oder wie geht das nun?
//edit
muss ich doch mal fragen, kann ich das nicht einfach so laden : -
breadfish.de
Hat das Thema geschlossen.