The problem is solved! Thanks IzNoGod!
Indeed all informations are uploaded/downloaded as string, I post the final version of the functions (that work):
PHP Code:
get_db_field(fieldname, vartype)
{
if(isDefined(self.isbot))
return undefined;
if(fieldname == "user_guid")
mysql_query(level.mysql_connection, "SELECT `"+fieldname+"` FROM `"+level.table+"` WHERE `user_name`= '"+self.name+"' LIMIT 1");
else
mysql_query(level.mysql_connection, "SELECT `"+fieldname+"` FROM `"+level.table+"` WHERE `user_guid`= '"+self.guid+"' LIMIT 1");
r = mysql_store_result(level.mysql_connection);
if(isdefined(r))
{
row = mysql_fetch_row(r);
if(isdefined(row) && isdefined(row[0]))
{
mysql_free_result(r);
if(vartype == "int")
row[0] = (int)(row[0]);
if(vartype == "float")
row[0] = (float)(row[0]);
return row[0];
}
mysql_free_result(r);
}
if(vartype == "int" || vartype == "float")
return 0;
else
return undefined;
}
set_db_field(fieldname, value)
{
if(isDefined(self.isBot))
return;
mysql_query(level.mysql_connection, "INSERT INTO `"+level.table+"`(`user_guid`, `"+fieldname+"`) VALUES ('"+self.guid+"', "+value+") ON DUPLICATE KEY UPDATE `"+fieldname+"`="+value+"");
wait 0.05;
}
set_db_field_string(fieldname, value)
{
if(isDefined(self.isBot))
return;
mysql_query(level.mysql_connection, "INSERT INTO `"+level.table+"`(`user_guid`, `"+fieldname+"`) VALUES ('"+self.guid+"', '"+value+"') ON DUPLICATE KEY UPDATE `"+fieldname+"`='"+value+"'");
wait 0.05;
}
I want to learn to create something like CoDExtended or whatsoever, where should I start?