Tag leute,
hab ein Problem:
Bei meinem (selfmade) Haussystem das ich nun auf MySQL umschreiben möchte gibt es einen Fehler.
Es wird nur die ID "0" in die Datenbank eingetragen.
Code:
new fhaus[128];
for(new i = 0;i<sizeof(haussys);i++)
{
format(fhaus,sizeof fhaus,"%d",i);
if(mysql_CheckHouse(fhaus) != 1)
{
mysql_SetString("houses", "owner", haussys[i][owner], "id", fhaus);
mysql_SetInt("houses", "id", i, "id", fhaus);
mysql_SetInt("houses", "interior", haussys[i][interi], "id", fhaus);
mysql_SetInt("houses", "virtualworld", haussys[i][world], "id", fhaus);
//.....
}
else
{
haussys[i][interi] = mysql_GetInt("houses", "interior", "id", fhaus);
haussys[i][world] = mysql_GetInt("houses", "virtualworld", "id", fhaus);
strmid(haussys[i][owner],mysql_GetString("houses", "owner", "id", fhaus),0,MAX_PLAYER_NAME,MAX_PLAYER_NAME);
//.....
}
}
Hoffe ihr könnt mir helfen,
MfG Firer
//EDIT:
Ausserdem wird das Haus immer wieder überschrieben.
Hier mal mein "mysql_CheckHouse" Code:
stock mysql_CheckHouse(sqlname[])
{
new query[128], escstr[MAX_PLAYER_NAME];
mysql_real_escape_string(sqlname, escstr);
format(query, sizeof(query), "SELECT id FROM houses WHERE LOWER(owner) = LOWER('%s') LIMIT 1", escstr);
mysql_query(query);
mysql_store_result();
if (mysql_num_rows()==0)return 0;
else
{
new strid[32];
new intid;
mysql_fetch_row(strid);
intid = strval(strid);
return intid;
}
}
//EDIT 2: Code verbessert