Hi
ich arbeite an einem Selfmade, welches ich auf mysql schreiben möchte.
Die Accounts funktionieren auch (fast) ohne fehler.
Aber das ganze wollte ich auf ein Autosystem übertragen. Resultat:
Autosystem geht nicht mehr. vorher war es dini und ging Problemlos aber egal.
Ich konnte den Fehler auf 2 Funktionen eingrenzen. Diese Funktionen habe ich erstellt,
indem ich eine für Accounts einfach angepasst habe.
Die Funktionen sind CheckAccount was ich versucht habe zu CheckCar zu machen:
stock mysql_CheckAccount(playerid)
{
new Query[128],Name[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
mysql_real_escape_string(Name, Name);
format(Query, sizeof(Query), "SELECT * FROM accounts WHERE Name = '%s'", Name);
mysql_query(Query);
mysql_store_result();
return mysql_num_rows();
}
stock mysql_CheckCar(playerid,i)
{
new Query[128], name[32], pname[32];
GetPlayerName(playerid, name, sizeof(name));
format(pname, sizeof(pname), "%s%d", name,i);//i ist der Schlüssel.also 1-MAX_CARS. es wird dann also aus Heinz Heinz1
mysql_real_escape_string(pname, pname);
format(Query, sizeof(Query), "SELECT * FROM autos WHERE Besitzer = '%s'", pname);
mysql_query(Query);
mysql_store_result();
return mysql_num_rows();
}
und dann CreateAccount und CreateCar
stock CreateAccount(playerid, pass[])
{
new query[256],Name[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
mysql_real_escape_string(Name,Name);
mysql_real_escape_string(pass,pass);
format(query, sizeof(query), "INSERT INTO accounts (Name, Passwort) VALUES ('%s', '%s')", Name, pass);
mysql_query(query);
return true;
}
stock CreateCar(name[], carmodel)
{
new query[256];
mysql_real_escape_string(name,name);// name wird hier schon im format z.b. "Heinz1" weitergegeben.
format(query, sizeof(query), "INSERT INTO autos (Besitzer, Model) VALUES ('%d', '%s')", name, carmodel);
mysql_query(query);
return true;
}
ich komme schon seit Tagen nicht weiter und wende mich nun als lezte Hoffnung an euch.
Mit freundlichen Grüßen