Posts: 6,129
Threads: 36
Joined: Jan 2009
Quote:
Originally Posted by JaTochNietDan
Time and time again I see people using queries in a loop, they are designed to be able to gather all of that information in a single query, rather than all of the queries you're doing here, depending on the value of MAX_MISSIONS. Why not just do 1 query and then work from that? There's no sense in calling multiple queries when you can just call one!
pawn Code:
public LoadStuff() { new values[6]; new Query[256]; mysql_query("SELECT * FROM `stuff`"); mysql_store_result(); while(mysql_fetch_row(Query)) { sscanf(Query, "p<|>ffffff", values); minfo[i][x1] = values[0]; minfo[i][y1] = values[1]; minfo[i][z1] = values[2]; minfo[i][x2] = values[3]; minfo[i][y2] = values[4]; minfo[i][z2] = values[5]; } mysql_free_result(); Loadmstuff(); return 1; }
I also recommend printing the value of Query just before sscanf, to make sure you're using the correct sscanf parameters to un-format that string. I hope that helps!
(Additionally I don't think you need 256 characters for the result!)
|
I was going to point that out, but I couldn't be bothered to explain it all.
Anyway, use that code, but change 'values' to a float.