09.09.2011, 20:57
Here is how I load factions, maybe this can help you, because right now your scrpt looks huge
pawn Код:
LoadFaction()
{
CheckConnection();
new Field[128],row[1024],idx;
mysql_query( "SELECT * FROM `factions` ORDER BY `id` ASC" );
mysql_store_result();
for(new i = 0; i < sizeof(Finfo); i++ )
{
idx = 0;
mysql_fetch_row(row);
Field = strtuk(row,idx,'|');
for(new s = -1; s < 17; s++ )
{
switch(s)
{
case 0: Finfo[i][Freq] = strval(Field);
case 1: strmid(Finfo[i][Name],Field, 0, strlen(Field), 255);
case 2: strmid(Finfo[i][FullName],Field, 0, strlen(Field), 255);
case 3: Finfo[i][FX] = floatstr(Field);
case 4: Finfo[i][FY] = floatstr(Field);
case 5: Finfo[i][FZ] = floatstr(Field);
case 6: Finfo[i][FR] = floatstr(Field);
case 7: Finfo[i][VW] = strval(Field);
case 8: Finfo[i][Int] = strval(Field);
case 9: Finfo[i][Dis] = strval(Field);
case 10: Finfo[i][EID] = strval(Field);
case 11: Finfo[i][Zone] = strval(Field);
case 12: Finfo[i][Gang] = strval(Field);
case 13: Finfo[i][Team] = strval(Field);
case 14: Finfo[i][AutoFreq] = strval(Field);
case 15: Finfo[i][FSkins] = strval(Field);
case 16: strmid(Finfo[i][Leader],Field, 0, strlen(Field), 255);
}
Field = strtuk(row,idx, '|' );
}
}
mysql_free_result();
print(" Factions from MySQL loaded.");
return 1;
}
SaveFaction(id)
{
CheckConnection();
new string[256],query[512],esc[64];
format(string,sizeof(string), "UPDATE `factions` SET `Freq` = '%d',",Finfo[id][Freq]); strcat(query,string);
mysql_real_escape_string(Finfo[id][Name],esc);
format(string,sizeof(string), " `Name` = '%s',",esc); strcat(query,string);
mysql_real_escape_string(Finfo[id][FullName],esc);
format(string,sizeof(string), " `FullName` = '%s',",esc); strcat(query,string);
format(string,sizeof(string), " `FX` = '%0.2f',",Finfo[id][FX]); strcat(query,string);
format(string,sizeof(string), " `FY` = '%0.2f',",Finfo[id][FY]); strcat(query,string);
format(string,sizeof(string), " `FZ` = '%0.2f',",Finfo[id][FZ]); strcat(query,string);
format(string,sizeof(string), " `FR` = '%0.2f',",Finfo[id][FR]); strcat(query,string);
format(string,sizeof(string), " `VW` = '%d',",Finfo[id][VW]); strcat(query,string);
format(string,sizeof(string), " `Int` = '%d',",Finfo[id][Int]); strcat(query,string);
format(string,sizeof(string), " `Dis` = '%d',",Finfo[id][Dis]); strcat(query,string);
format(string,sizeof(string), " `EID` = '%d',",Finfo[id][EID]); strcat(query,string);
format(string,sizeof(string), " `Zone` = '%d',",Finfo[id][Zone]); strcat(query,string);
format(string,sizeof(string), " `Gang` = '%d',",Finfo[id][Gang]); strcat(query,string);
format(string,sizeof(string), " `Team` = '%d',",Finfo[id][Team]); strcat(query,string);
format(string,sizeof(string), " `AutoFreq` = '%d',",Finfo[id][AutoFreq]); strcat(query,string);
format(string,sizeof(string), " `FSkins` = '%d'",Finfo[id][FSkins]); strcat(query,string);
format(string,sizeof(string), " WHERE `id` = '%d'",id); strcat(query,string);
mysql_query(query);
return 1;
}