Das Problem bei gegebenem Code ist folgendes:

f ($ap_user['rang_id'] < $ap_rang['id'] ) {
db_query("UPDATE ".$db_prefix."_kontodaten SET bkontostand=bkontostand+".$ap_rang['bonus'].", rang_id=".$ap_rang['id'].", rang='".$ap_rang['rang']."' WHERE rang_id != ".$ap_rang['id']." && uid= ".$_SESSION['uid']);
Somit überprüft er, nachdem die entsprechende Datei aufgerufen wurde, ob die Anforderung erfüllt wurde. Wenn jedoch die ID während des spielens von 1 auf 4 steigt, dann bucht er nur den 4. Rang inkl. Bonus! Deshalb die Idee mit der Aktualisierung / Refresh.