Nothing is wrong with your OnPlayerSpawn callback. Try this:
pawn Код:
stock SetPlayerData(playerid)
{
Player[playerid][ID] = cache_get_field_content_int(0, "id");
cache_get_field_content(0, "password", Player[playerid][Password], SQL, 129);
//The password is a varchar so you need to use cache_get_field_content
Player[playerid][Admin] = cache_get_field_content_int(0,"admin");
Player[playerid][Health] = cache_get_field_content_float(0, "health");
Player[playerid][Armour] = cache_get_field_content_float(0, "armour");
cache_get_field_content(0, "admintitle", Player[playerid][AdminTitle], SQL, 64);
//the admin title is a varchar so it is again retrieved by cache_get_field_content.
Player[playerid][Level] = cache_get_field_content_int(0,"level");
//the level is an integer.
Player[playerid][PosX] = cache_get_field_content_float(0, "PosX"); //Since player's position is a float, we use cache_get_field_content_float
Player[playerid][PosY] = cache_get_field_content_float(0, "PosY");
Player[playerid][PosZ] = cache_get_field_content_float(0, "PosZ");
return 1;
}