SQLite Improved
#5

You mean your house ids are not sorted? example
ID 1
ID 3
ID 2
and so on?
if yes this should load it properly without problems

PHP код:
LoadHouses()
{
    new
        
query[256],
        
DBResult:dbresult,
        
field[20]
    ;

    
format(querysizeof(query), "SELECT * FROM `houses`);
    dbresult = db_query(database, query);

    if(db_num_rows(dbresult))
    {
        new rows = db_num_rows(dbresult),meid[10],idid;
        for(new i = 0; i < rows; i++) {
            if(i > MAX_HOUSES) {
               printf("   
ERRORMaximum houses value is %d but houses rows found are | %|",MAX_HOUSES,rows);
               break;
               // simple script to avoid loading houses which are more than MAX_HOUSES value
            }
            db_get_field_assoc(dbresult, "
id", meid, sizeof(meid));             idid = strval(meid);
            db_get_field_assoc(dbresult, "
owner", field, sizeof(field));        format(HouseInfo[idid][hOwner], 92, field);
            db_get_field_assoc(dbresult, "
address", field, sizeof(field));        format(HouseInfo[idid][hAddress], 92, field);
            db_get_field_assoc(dbresult, "
forsale", field, sizeof(field));      HouseInfo[idid][hForSale] = strval(field);
            db_get_field_assoc(dbresult, "
price", field, sizeof(field));          HouseInfo[idid][hPrice] = strval(field);
            db_get_field_assoc(dbresult, "
x", field, sizeof(field));              HouseInfo[idid][housePos][0] = floatstr(field);
            db_get_field_assoc(dbresult, "
y", field, sizeof(field));              HouseInfo[idid][housePos][1] = floatstr(field);
            db_get_field_assoc(dbresult, "
z", field, sizeof(field));              HouseInfo[idid][housePos][2] = floatstr(field);
            db_get_field_assoc(dbresult, "
a", field, sizeof(field));              HouseInfo[idid][housePos][3] = floatstr(field);
            db_get_field_assoc(dbresult, "
ix", field, sizeof(field));              HouseInfo[idid][houseInt][0] = floatstr(field);
            db_get_field_assoc(dbresult, "
iy", field, sizeof(field));              HouseInfo[idid][houseInt][1] = floatstr(field);
            db_get_field_assoc(dbresult, "
iz", field, sizeof(field));              HouseInfo[idid][houseInt][2] = floatstr(field);
            db_get_field_assoc(dbresult, "
ia", field, sizeof(field));              HouseInfo[idid][houseInt][3] = floatstr(field);
            db_get_field_assoc(dbresult, "
hox", field, sizeof(field));              HouseInfo[idid][houseObjectPos][0] = floatstr(field);
            db_get_field_assoc(dbresult, "
hoy", field, sizeof(field));              HouseInfo[idid][houseObjectPos][1] = floatstr(field);
            db_get_field_assoc(dbresult, "
hoz", field, sizeof(field));              HouseInfo[idid][houseObjectPos][2] = floatstr(field);
            db_get_field_assoc(dbresult, "
hoa", field, sizeof(field));              HouseInfo[idid][houseObjectPos][3] = floatstr(field);
            db_get_field_assoc(dbresult, "
interior", field, sizeof(field));       HouseInfo[idid][houseInterior] = strval(field);
            db_get_field_assoc(dbresult, "
exteriorint", field, sizeof(field));  HouseInfo[idid][houseExteriorInt] = strval(field);
            db_get_field_assoc(dbresult, "
exteriorvw", field, sizeof(field));   HouseInfo[idid][houseExteriorVW] = strval(field);
            db_get_field_assoc(dbresult, "
locked", field, sizeof(field));          HouseInfo[idid][houseLocked] = strval(field);
            db_get_field_assoc(dbresult, "
money", field, sizeof(field));          HouseInfo[idid][houseMoney] = strval(field);
            db_get_field_assoc(dbresult, "
sx", field, sizeof(field));              HouseInfo[idid][houseStore][0] = floatstr(field);
            db_get_field_assoc(dbresult, "
sy", field, sizeof(field));              HouseInfo[idid][houseStore][1] = floatstr(field);
            db_get_field_assoc(dbresult, "
sz", field, sizeof(field));              HouseInfo[idid][houseStore][2] = floatstr(field);
            House_Refresh[idid];
            ServerInfo[total_houses]++;
            db_next_row(dbresult);
        }
    }
    db_free_result(dbresult);
    return 1;

about this message / warning spam Slice said you have to increase gs_adbrAutoFreeResults value, at this link:

https://sampforum.blast.hk/showthread.php?tid=303682&page=15

Quote:
Originally Posted by Slice
Посмотреть сообщение
It's because of memory leaks, yes. You could modify the size of gs_adbrAutoFreeResults until the errors stop (that's a good start if you need it fixed quickly).
Reply


Messages In This Thread
SQLite Improved - by JaKe Elite - 12.05.2016, 05:57
Re: SQLite Improved - by jlalt - 12.05.2016, 06:04
Re: SQLite Improved - by Konstantinos - 12.05.2016, 09:17
Re: SQLite Improved - by JaKe Elite - 12.05.2016, 11:24
Re: SQLite Improved - by jlalt - 12.05.2016, 11:42
Re: SQLite Improved - by JaKe Elite - 12.05.2016, 11:59
Re: SQLite Improved - by JaKe Elite - 12.05.2016, 12:40
Re: SQLite Improved - by jlalt - 12.05.2016, 12:55
Re: SQLite Improved - by JaKe Elite - 12.05.2016, 13:32
Re: SQLite Improved - by jlalt - 12.05.2016, 14:28

Forum Jump:


Users browsing this thread: 1 Guest(s)