[Hilfe]Metin-Script!

02/26/2012 21:33 richib135#1
Guten Tag.

Ist es möglich einen Script zu schreiben, der dann alle 24h diesen Befehl als Query ausführt:
Update account.account Set vote_coins = '0';
Wenn ja, könnte mir wer so nen Scrip schreiben bzw. mir erklären wie man einen erstellt.
Wäre sehr Dankebar

MfG!


Achja, und gibt es eine Quest / ein Script, die / der auch alle 24h ein gewisses Item (vnum: 45678) aus dem Lager löscht?

MfG!
02/26/2012 21:59 __BuRn3R#2
Du könntest ein Php Script, der diesen Query ausführt alle 24 Stunden per Cronjob aufrufen lassen.
02/26/2012 22:04 richib135#3
Nimm mich mal bitte in Skype
02/26/2012 23:09 Mashkin#4
Code:
mysql -hlocalhost -uroot --password=PASSWORT -e "UPDATE account.account SET vote_coins = '0';"
Ist der Befehl für den Cronjob (ganz ohne PHP).
Den fügst du folgendermaßen in die Datei "/etc/crontab" ein:
Code:
0 <TAB> 0 <TAB> * <TAB> * <TAB> * <TAB> root <TAB> mysql -hlocalhost -uroot --password=PASSWORT -e "UPDATE account.account SET vote_coins = '0';"
Ersetze aber
1. PASSWORT durch das richtige mysql-Passwort
2. die " <TAB> " durch Tabs (Tabs kann ich hier im Post nicht schreiben).
Mit dem Eintrag wird die Query täglich um Mitternacht nach Serverzeit ausgeführt.


Quote:
Originally Posted by richib135 View Post
Guten Tag.

Ist es möglich einen Script zu schreiben, der dann alle 24h diesen Befehl als Query ausführt:
Update account.account Set vote_coins = '0';
Wenn ja, könnte mir wer so nen Scrip schreiben bzw. mir erklären wie man einen erstellt.
Wäre sehr Dankebar

MfG!


Achja, und gibt es eine Quest / ein Script, die / der auch alle 24h ein gewisses Item (vnum: 45678) aus dem Lager löscht?

MfG!
Ich finde es immer gut, wenn Leute Ideen haben :)
Quote:
Originally Posted by _BuRn3R_ View Post
Du könntest ein Php Script, der diesen Query ausführt alle 24 Stunden per Cronjob aufrufen lassen.
...und wenn Leute Ahnung haben! :D Die wenigsten hier wissen, was ein Cronjob ist ;)

€dit: Query für Item-Löschung:
Code:
DELETE FROM player.item WHERE vnum='45678';
Lässt sich ebenfalls per Cronjob ausführen.
02/27/2012 19:15 richib135#5
Ja aber bei diesen Code:
DELETE FROM player.item WHERE vnum='45678';
Da wird doch das Item aus dem Inventar gelöscht, oder?
Es sollte nur aus dem Itemshop bzw. normalen Lager gelöscht werden.

Also ich habe jetzt diesen Code in die crontab Datei in die letze Zeile hinzugefügt: (zum schluss ist noch 1 leere Zeiel)
Code:
0	0	*	*	*	root	mysql -hlocalhost -uroot --password=Datenbankpw -e "UPDATE account.account SET vote_coins = '0';"
Ist das so richtig?
Oder sollte ich das localhost noch ersetzen mit meiner Root-IP?

MfG
02/27/2012 20:11 Mashkin#6
Quote:
Originally Posted by richib135 View Post
Ja aber bei diesen Code:
DELETE FROM player.item WHERE vnum='45678';
Da wird doch das Item aus dem Inventar gelöscht, oder?
Es sollte nur aus dem Itemshop bzw. normalen Lager gelöscht werden.
Code:
DELETE FROM player.item WHERE vnum='45678' AND (window='SAFEBOX' OR window='MALL');
Dann eben so.
Quote:
Originally Posted by richib135 View Post
Also ich habe jetzt diesen Code in die crontab Datei in die letze Zeile hinzugefügt: (zum schluss ist noch 1 leere Zeiel)
Code:
0    0    *    *    *    root    mysql -hlocalhost -uroot --password=Datenbankpw -e "UPDATE account.account SET vote_coins = '0';"
Ist das so richtig?
Oder sollte ich das localhost noch ersetzen mit meiner Root-IP?
Wenn du den Cronjob auf deinem Root eingetragen hast (wovon auszugehen ist), dann reicht 'localhost'.
02/27/2012 20:48 richib135#7
Danke!

Und wie oft löscht er dan das Item aus dem (Itemshop)Lager?
Wieder um Mitternacht?
02/27/2012 22:35 Mashkin#8
Quote:
Originally Posted by richib135 View Post
Danke!

Und wie oft löscht er dan das Item aus dem (Itemshop)Lager?
Wieder um Mitternacht?
Das kommt darauf an, wie du den Cronjob einstellst:
Der Befehl wird immer zur angegebenen Zeit ausgeführt:
Code:
#Minute//Stunde//MonatsTag//Monat//WochenTag//Benutzer//Befehl
30    1    *    *    *    root    mysql -hlocalhost -uroot --password=Datenbankpw -e "DELETE FROM player.item WHERE vnum='45678' AND (window='SAFEBOX' OR window='MALL');"
Das heißt, dass der Befehl in der 30. Minute der 1. Stunde an jedem Tag in jedem Monat und auch an jedem Wochentag ausgeführt.
->Also täglich um 01:30 Uhr.

Hier findest du einen Einblick in die Datei "/etc/crontab": [Only registered and activated users can see links. Click Here To Register...]