Guten Abend Breadfish,
Ich habe zurzeit ein Problem mit sscanf.
Ich lasse meine Tankstellen aus einer MySQL Datenbank auslesen.
Jedoch übergibt sscanf die Falschen werde an die Varriabeln? ![]()
Hier der Code zum Laden:
stock LoadTankstellen()
{
print("[Tankstellen] Laden...");
new query[30], daten[512], string[128], idx;
format(query, sizeof(query), "SELECT * FROM `tankstellen`");
mysql_query(query);
mysql_store_result();
if(mysql_num_rows())
{
while(mysql_fetch_row(daten))
{
print(daten);
sscanf(daten, "e<p<|>iffffiii>", Tankstelle[idx]);
printf("[DEBUG] %d | %f | %f | %f | %f | %d | %d | %d",Tankstelle[idx][TID],Tankstelle[idx][TPosX],Tankstelle[idx][TPosY],Tankstelle[idx][TPosZ],Tankstelle[idx][TRadius],Tankstelle[idx][TFuel],Tankstelle[idx][TPreis],Tankstelle[idx][TType]);
idx++;
}
printf("[Tankstellen] Es wurden %d Tankstellen geladen!",idx);
}
else print("[ERROR] Keine Tankstellen zum Laden in der Datenbank!");
mysql_free_result();
return 1;
}
Ausgegeben wird dies hier:
[04.07.2011 - 21:53:31] [Tankstellen] Laden...
[04.07.2011 - 21:53:31] 1|1004.06|-937.534|42.3281|6|3321|5|0
[04.07.2011 - 21:53:31] [DEBUG] 1 | -1.509126 | 1004.059997 | -937.533996 | 42.328098 | 3321 | 5 | 0
[04.07.2011 - 21:53:31] 3|1942.38|-1772.78|13.6406|6|83|4|0
[04.07.2011 - 21:53:31] [DEBUG] 3 | -0.000009 | 1942.380004 | -1772.780029 | 13.640600 | 83 | 4 | 0
[04.07.2011 - 21:53:31] 5|-91.0254|-1169.44|2.4186|6|687|5|0
[04.07.2011 - 21:53:31] [DEBUG] 5 | -0.000009 | -91.025398 | -1169.439941 | 2.418600 | 687 | 5 | 0
[04.07.2011 - 21:53:31] 7|-1606.46|-2713.79|48.5335|6|9467|3|0
[04.07.2011 - 21:53:31] [DEBUG] 7 | -0.000009 | -1606.459960 | -2713.790039 | 48.533500 | 9467 | 3 | 0
[04.07.2011 - 21:53:31] 9|-2029.49|156.391|28.8359|6|11|3|0
[04.07.2011 - 21:53:31] [DEBUG] 9 | -0.000009 | -2029.489990 | 156.391006 | 28.835899 | 11 | 3 | 0
[04.07.2011 - 21:53:31] 11|-2410.81|976.161|45.4609|8|8237|6|0
[04.07.2011 - 21:53:31] [DEBUG] 11 | -0.000009 | -2410.810058 | 976.161010 | 45.460899 | 8237 | 6 | 0
[04.07.2011 - 21:53:31] 13|-2244.14|-2560.87|31.9219|5|9985|3|0
[04.07.2011 - 21:53:31] [DEBUG] 13 | -0.000009 | -2244.139892 | -2560.870117 | 31.921899 | 9985 | 3 | 0
[04.07.2011 - 21:53:31] 15|-1676.19|413.576|7.1797|8|158|4|0
[04.07.2011 - 21:53:31] [DEBUG] 15 | -0.000009 | -1676.189941 | 413.575988 | 7.179699 | 158 | 4 | 0
[04.07.2011 - 21:53:31] 17|2202.23|2474.35|10.8203|6|4813|4|0
[04.07.2011 - 21:53:31] [DEBUG] 17 | -0.000009 | 2202.229980 | 2474.350097 | 10.820300 | 4813 | 4 | 0
[04.07.2011 - 21:53:31] 19|614.933|1689.74|6.6968|10|7303|3|0
[04.07.2011 - 21:53:31] [DEBUG] 19 | -0.000009 | 614.932983 | 1689.739990 | 6.696800 | 7303 | 3 | 0
[04.07.2011 - 21:53:31] 21|-1328.41|2677.53|50.0625|8|9883|5|0
[04.07.2011 - 21:53:31] [DEBUG] 21 | -0.000009 | -1328.410034 | 2677.530029 | 50.062500 | 9883 | 5 | 0
[04.07.2011 - 21:53:31] 23|70.5711|1218.69|18.8126|6|9275|2|0
[04.07.2011 - 21:53:31] [DEBUG] 23 | -0.000009 | 70.571098 | 1218.689941 | 18.812599 | 9275 | 2 | 0
[04.07.2011 - 21:53:31] 25|2115.03|919.99|10.8203|8|9659|3|0
[04.07.2011 - 21:53:31] [DEBUG] 25 | -0.000009 | 2115.030029 | 919.989990 | 10.820300 | 9659 | 3 | 0
[04.07.2011 - 21:53:31] 27|655.812|-565.009|16.3359|6|9635|7|0
[04.07.2011 - 21:53:31] [DEBUG] 27 | -0.000009 | 655.812011 | -565.008972 | 16.335899 | 9635 | 7 | 0
[04.07.2011 - 21:53:31] 29|1382.28|460.154|20.3452|8|9911|4|0
[04.07.2011 - 21:53:31] [DEBUG] 29 | -0.000009 | 1382.280029 | 460.153991 | 20.345199 | 9911 | 4 | 0
[04.07.2011 - 21:53:31] [Tankstellen] Es wurden 15 Tankstellen geladen!
Alles anzeigen
Wäre schön wenn jemand eine idde hätte.
PS: Auf meinem Homeserver funktioniert alles nur auf meinem VServer nicht (Linux)
MFG, Zunno
/EDIT: Code angepasst..