MySQL Update - Connection refused

08/25/2015 11:14 MaxChri#1
Hallo, habe eben versucht ein Wartungssystem einzubauen.
Alles klappt auch wunderbar, nur wenn alle Accounts per Quest auf shutdown gesetzt werden sollen, kommen unzählige connection refused.


Edit: Liegt doch nicht an der SQL, sondern an der Quest. Wenn ich das System
ohne Timer oder Cmdchat("Exit") einstelle, funktioniert alles und mit Server Timer + Cmdchat("Exit") crasht alles.

Quest: (von Stamm1994)
PHP Code:
quest test123 begin
    state start begin
        when 20006.chat
."SA: Wartung" with pc.is_gm() begin
            
if game.get_event_flag("login") == 0 then
                say
('Wartung in wie vielen Minuten?[ENTER](Mindestens 30 Minuten vorher ankündigen!)')
                
local a tonumber(input())
                if 
== nil then
                    say
('Bitte in Zahlen angeben!')
                    return
                
end
                minutes 
a
                notice_all
('Wartung in '..minutes..' Minuten. Bitte rechtzeitig ausloggen!')
                
server_loop_timer('reboot_time',60*5,(os.time()+minutes*60));
            else
                
say("Willst du den Login wieder freigeben?")
                
local f select ("Ja" "Abbrechen")
                if 
== 1 then
                    mysql_query
("UPDATE account.account SET account.status = 'OK' WHERE status = 'SHUTDOWN' and account.login NOT IN (SELECT mAccount FROM common.gmlist);")
                    
game.set_event_flag("login"0)
                
end
            end
        end
        when reboot_time
.server_timer begin
            
if os.time() < get_server_timer_arg() then
                notice_all
('Wartung in '..tostring(math.floor((get_server_timer_arg()-os.time())/60))..' Minuten. Alle ausloggen!')
            else
                
mysql_query("UPDATE account.account SET account.status = 'SHUTDOWN' WHERE status = 'OK' and account.login NOT IN (SELECT mAccount FROM common.gmlist);")
                
cmdchat("exit"
                
game.set_event_flag("login"1)
            
end
        end
    end
end 
08/25/2015 12:16 rollback#2
Du kannst in einem Servertimer keine Befehle ausführen, die eine Player Instanz benötigen (cmdchat).