Das kann nicht gehen, da der | Streifen da sein muss/sollte
ich habs exakt nach den gemacht
[ SCRIPTING ] sscanf 2.0
aber es funzt nicht
Das kann nicht gehen, da der | Streifen da sein muss/sollte
ich habs exakt nach den gemacht
[ SCRIPTING ] sscanf 2.0
aber es funzt nicht
Dies funktioniert auch nicht
Morgen zusammen
Ich habe ein kleines Problem
Bei mir wird von SSCANF nichts an mein Enum übermittelt
Ich kann alles in der Datenbank stehen haben aber imgame kommt nix an
Holen tut er alles nach den Log
[Tue Dec 04 11:28:53 2012] Function: mysql_fetch_row executed with result: "1|Beavis|Snipped|5|1|4|172761|181|6|6|560|0|0|1|0|Test123|Beavis|127.0.|11880|NULL".
So ist der Code
stock LoadPlayer(playerid,Key[])
{
new Get[100],Data[1024];
format(query, 256, "SELECT `Passwort` FROM `player` WHERE `Name` = '%s'", PlayerInfo[playerid][Name]);
mysql_query(query, (-1), (0), SQL);
mysql_store_result(SQL);
mysql_fetch_row(Get, "|", SQL);
if(!strcmp(MD5_Hash(Key), Get, true))
{
mysql_free_result(SQL);
format(query, sizeof(query),"SELECT * FROM `player` WHERE `Name` = '%s'",PlayerInfo[playerid][Name]);
mysql_query(query, (-1), (0), SQL);
mysql_store_result(SQL);
while(mysql_fetch_row(Data, "|", SQL))
{
sscanf(Data, "e<p<|>ds[64]s[128]dddddddddddds[128]s[128]s[16]dd>",PlayerInfo[playerid]);
}
GivePlayerMoney(playerid,PlayerInfo[playerid][Geld]);
SetPlayerScore(playerid,PlayerInfo[playerid][Userid]);
format(query, 128, "{006100}[Join] %s hat den Server betreten.", PlayerInfo[playerid][Name]);
SendClientMessageToAll(cGreen, query);
SpawnPlayer(playerid);
}
else
{
format(query, 128, "{FFFFFF}Fehler{FF6E00} %s {FFFFFF}Das Passwort war Falsch", PlayerInfo[playerid][Name]);
ShowPlayerDialog(playerid,diaLogin,DIALOG_STYLE_PASSWORD,Servername,query,"Login","");
}
mysql_free_result(SQL);
}
und zu guter letzt die enum struktur
enum PlayerEnum
{
Userid,
Name[MAX_PLAYER_NAME],
Passwort[128],
Admin,
Job,
Team,
Geld,
Skin,
Level,
Respekt,
PayDay,
PayDayTog,
Rank,
Leader,
Banned,
BanGrund[128],
BanAdmin[128],
IP[16],
Nummer,
Safeban
};
Ich steh hier mit einen Fragezeichen
Mein enum steht genau so wie es in der Reienfolge der Datenbank ist
Ich hoffe auf hilfe von euch
Mal gut zu wissen, das ein Betrüger unter uns ist
das war keine gute idee sowas zu Posten
Mit SetPlayerPos
Oder du verwendest die Interpolate funktion
Das ist nicht schlimm
Die coordinaten stimmen trotzdem noch ingame
daher brauchst du dir keine Sorgen machen
Samp wird es noch einige Zeit geben
Guck dir mal samp an und dagegen den IVMP
Samp ist und bleibt an der spitze
Das selbe das bei mir steht
alles bis auf den namen
Beides
(e)
Keiner eine Idee wiso das vorkommt?
Was sagt der Debug?
(Gab es nicht vor kurzen exakt das selbe Thema?)
Alles anzeigenSorry,
ich arbeite nicht gerne mit "diesem" Plugin,
In was muss das dann bei dem von Blue G umgeschrieben werden?
mysql_fetch_field("Handynummer",data); _Handy[playerid][Handynummer] = strval(data);
SetPlayerScore(playerid,_Handy[playerid][Handynummer]);
Das hab ich dir doch geschrieben
so
mysql_fetch_field_row("Handynummer",data); _Handy[playerid][Handynummer] = strval(data);
klein aber fein
Das was ich sinnlos finde, ist das du da nen Label drüber setzt
public OnFilterScriptExit()
schreib da mal mysql_close rein, denn wenn einer ein gmx ingame macht, baut er wieder eine neue Verbindung auf
mach einiger Zeit geht dann nichts mehr
Die resetten sich nach einen Disconnect von allein
Guten zusammen
Ich habe ein kleines Problem
wenn ich Offline gehe, und dann noch ein Spieler auf den Server ist, erhält er komischerweise meine gesammten daten
Warum auch immer
Ich bin Ratlos, da ich es Mit enums versucht habe und mit PVars
es kommt immer das selbe bei raus.
Den Player lass ich so laden:
stock LoadPlayerData(playerid)
{
mysql_reconnect();
new string[512],Get[100],Name[MAX_PLAYER_NAME];
GetPlayerName(playerid,Name,MAX_PLAYER_NAME);
format(string, 128, "SELECT * FROM player WHERE Name = '%s'",Name);
mysql_query(string);
mysql_store_result();
while(mysql_fetch_row_format(string,"|"))
{
mysql_fetch_field_row(Get, "Admin"); SetPVarInt(playerid,"Admin",strval(Get));
mysql_fetch_field_row(Get, "Job"); SetPVarInt(playerid,"Job",strval(Get));
mysql_fetch_field_row(Get, "Team"); SetPVarInt(playerid,"Team",strval(Get));
mysql_fetch_field_row(Get, "Skin"); SetPVarInt(playerid,"Skin",strval(Get));
mysql_fetch_field_row(Get, "Level"); SetPVarInt(playerid,"Level",strval(Get));
mysql_fetch_field_row(Get, "Job"); SetPVarInt(playerid,"Job",strval(Get));
mysql_fetch_field_row(Get, "Cash"); SetPVarInt(playerid,"Cash",strval(Get));
mysql_fetch_field_row(Get, "Respekt"); SetPVarInt(playerid,"Respekt",strval(Get));
mysql_fetch_field_row(Get, "PayDay"); SetPVarInt(playerid,"PayDay",strval(Get));
mysql_fetch_field_row(Get, "PayDayTog"); SetPVarInt(playerid,"PayDayTog",strval(Get));
mysql_fetch_field_row(Get, "Rank"); SetPVarInt(playerid,"Rank",strval(Get));
mysql_fetch_field_row(Get, "Leader"); SetPVarInt(playerid,"Leader",strval(Get));
mysql_fetch_field_row(Get, "Nummer"); SetPVarInt(playerid,"Nummer",strval(Get));
}
mysql_free_result();
format(string, 128,"%s%d",Name,0);
if(B_MySQL_CheckData("playercars","Name",string)!=0)
{
LoadPlayerCar(playerid,0);
}
format(string, 128,"%s%d",Name,1);
if(B_MySQL_CheckData("playercars","Name",string)!=0)
{
LoadPlayerCar(playerid,1);
}
format(string, 128,"%s%d",Name,2);
if(B_MySQL_CheckData("playercars","Name",string)!=0)
{
LoadPlayerCar(playerid,2);
}
}
Speichern lass ich den Spaß so
stock SavePlayer(playerid)
{
mysql_reconnect();
new Name[MAX_PLAYER_NAME],string[512];
GetPlayerName(playerid,Name,MAX_PLAYER_NAME);
format(string,512,"UPDATE `player` SET `Admin` = '%d',`Job` = '%d',`Team` = '%d',`Cash` = '%d',`Skin` = '%d',`Level` = '%d',`Respekt` = '%d',`PayDay` = '%d',`PayDayTog` = '%d',`Rank` = '%d',`Leader` = '%d',`Nummer` = '%d' WHERE `Name` = '%s'",
GetPVarInt(playerid,"Admin"),GetPVarInt(playerid,"Job"),GetPVarInt(playerid,"Team"),GetPlayerMoney(playerid),GetPlayerSkin(playerid),GetPVarInt(playerid,"Level"),GetPVarInt(playerid,"Respekt"),GetPVarInt(playerid,"PayDay"),
GetPVarInt(playerid,"PayDayTog"),GetPVarInt(playerid,"Rank"),GetPVarInt(playerid,"Leader"),GetPVarInt(playerid,"Nummer"),Name);
mysql_query(string);
return 1;
}
Wenn ich dann wieder onlinke komme, hab ich meine alten daten noch, aber Spieler 2 hat auch meine Daten.
Ratlos bin ich wirklich, da mir keine Lösung mehr dazu einfällt.
Daher hoffe ich auf eure hilfe
Wir haben einen Neuen Header (Sehr schön gemacht wenn man einen account hat)
und es wurden einige Plugins Installiert.
Weiterhin warten wir auf Robbe oder Joshua mit den neuen Design
Ich verwende es von Blue G
und das kann es abhaben
aber der mist will nicht funzen
Guten zusammen
Ich habe ien kleines Prolem
Ich mlöchte 2 MySQL verbindungen aufbauen, jedoch scheint dies nicht zu funktionieren
Ich habe 2mal sowas ganz oben deklairt
new testconnect[2];
anwenden tue ich es so
testconnect[0] = mysql_connect(HostIP,HostUser,HostDatabase,HostPasswort);
testconnect[1] = mysql_connect(HostIP2,HostUser2,HostDatabase2,HostPasswort2);
if(mysql_ping(testconnect[0])) print("MySQL connection hergestellt!");
if(!mysql_ping(testconnect[0])) print("MySQL connection ist tot!");
if(mysql_ping(testconnect[1])) print("MySQL connection hergestellt!");
if(!mysql_ping(testconnect[1])) print("MySQL connection ist tot!");
Das problem ist jetzt, das wenn ich bei Testconnect0 die zugangsdaten richtig habe und bei 1 falsch, gibt er die 1 als verbunden an
ich versteh nicht wiso
Darum hoffe ich auf eure hilfen
Naja
Ich denke, das der komplett aufgeben würde wenn man mehr als 500 Objecte hat
Und wiso ist es ein Filterscript?
Als include würd das ganze besser passen
Irgendwo setzt du den Spieler in ein troggelplayerspectate rein oder wie man das nennt
Das erkenn ich schon an den Streifen die in den Bild sind