Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 17 von 17
  1. #11
    PDFTT_cr3w.jpg.exe Avatar von SFX
    Registriert seit
    01.08.2008
    Beiträge
    557

    Standard

    Du musst, wie auf Blackberrys ERD bereits ersichtlich wird, eine Crosstable anlegen, über die sich dann, wenn jeder Bot und jeder Task einen PK bekommen hat, das Ganze relativ leicht handeln lässt

    denkbar wäre auch eine direkte 1:n Beziehung zwischen Task und User, über einen FK in der Usertable, in dem die ID des aktuellen Tasks steht, wenn eine Aufgabe über längere Zeit ausgeführt wird
    free-hack secure connection

    Level 61 Troll
    [ Manifesto ]

    GPG erwünscht [ Key ]
    7A16 997D 08AA D280 4822 F0AC 2BDC 2302 4C54 C396


  2. #12

    Standard

    Danke BlackBerry & SFX, nun muss ich sagen dass ich mich seit 3-4 Tagen peripher mit Datenbankensystemen beschäftige - nicht aus Lust sondern um ein Panel zu basteln und ich dachte dass ich das mal so "nebenbei" mache doch irgendwie überfordert es mich.. :>

    Ich werde schauen wie ich das hinbekomme, ob es dann eine optimale Lösung darstellt ist eine andere Frage..
    Geändert von CYSER (14.12.2010 um 18:58 Uhr)

  3. #13
    Bad Times Virus
    Registriert seit
    14.03.2009
    Beiträge
    579

    Standard

    Um BlackBerrys Post abzurunden hier kleine auszüge des EliteLoaders:
    Code:
    //Select all tasks
    $cmd = $db->query("SELECT * FROM `".PREFIX."_tasks_loads` ORDER BY `id`", true);
    //Loop through them
    while($data = $db->get_row($cmd))
    {
       $bots = $db->super_query("SELECT count(`id`) AS 'count' FROM `".PREFIX."_work` WHERE `type`='loads' AND `cid`='".$data['id']."' AND `botid`='".$db->safesql($_GET['id'])."'");
        //skip task if already executed
        if($bots['count'] > 0){ continue; }
    }
    Außerdem ist der Threadtitel scheiße. Es hat einfach nix mit dem thema zu tun also werden Leute die eventuell Ahnung haben nicht angesprochen und helfen dir auch nicht.

  4. #14
    PDFTT_cr3w.jpg.exe Avatar von SFX
    Registriert seit
    01.08.2008
    Beiträge
    557

    Standard

    eh ja..

    der Snippet ist aber nicht besonders "elite"

    a) nicht besonders sauber
    b) nicht besonders performant

    an sowas kann man schon erkennen dass der Autor grade mal grobe Grundlagen von SQL hatte
    free-hack secure connection

    Level 61 Troll
    [ Manifesto ]

    GPG erwünscht [ Key ]
    7A16 997D 08AA D280 4822 F0AC 2BDC 2302 4C54 C396


  5. #15
    Anfänger
    Registriert seit
    11.12.2010
    Beiträge
    28

    Standard

    Zum Glück haben wir ja dich hier

  6. #16
    Capt'n Crunch
    Registriert seit
    10.07.2008
    Beiträge
    999

    Standard

    stimme sfx zu.
    das beispiel ohne wäre mit subqueries bzw joins in ein sql gepackt und damit schöner zu lesen und wesentlich schneller...

    irgendwer hat die frage gehabt ob er für jeden task ne tabelle brauch in die sich die bots eintragen
    --> Nein, du hast eine tabelle in der die tasks beschrieben sind und eine in der die aufträge auftauchen diese werden dann mit den ids verknüpft...
    also sollte das ganze mit 3 (n zu m)- max!!! 5 tabellen auskommen (wenn es auf eine art aufgabenverwaltung geht). Da sind dann noch keine Tabellen für die Botbeschreibung dabei, aber ob die interessiert...
    bitcoin. Banking Is Necessary. Banks Are Not. - by Lincoln6Echo

    Das ganze Mysql usw is mir zu viel arbeit um es zu lernen

  7. #17
    Stanley Jobson
    Registriert seit
    09.12.2006
    Beiträge
    671

    Standard

    also ich würde das so machen.

    es gibt eine datenbank. z.b "botnet"

    dadrin sind 2 tabellen wie "aufgaben" und "erledigt"

    ich weiß aber net was bei dir limit heißt. vielleicht zeit?
    die struktur von "aufgaben" sieht so aus:

    Code:
    id,name,befehl,zeit,code
    die id ist immer random und wird vom sql server generiert beim eintragen in die datenbank. name ist unwichtig halt nur für dich zur übersicht. befehl sollte klar sein. zeit sollte auch klar sein z.b 13:00,code ist ne zufallszahl möglichst hoch z.b 36824


    beispiele:

    [1][cmd ausführen][start cmd.exe][13:00] [36824]
    [2][firefox ausführen][start firefox.exe][14:00] [47247]

    so nun die index.php

    aufruf vom bot:

    index.php?bot=BOTNAME

    vom server die auswahl treffen lassen anhand der zeit ist nicht sinnvoll. bots in russland.. andere zeit als in spanien...

    die index.php schaut so nur in der tabelle "erledigt" nach. und prüft dann was der nächste befehl wäre. wenn es keine befehle mehr gibt werden alle einträge in "erledigt" zu dem bot gelöscht.also halt prüfen ob die sachen von "aufgaben" alle schon in "erledigt" sind.


    "erledigt" sieht so aus:

    Code:
    botname,auftragsid
    beispiel:

    [testbot4][1]
    [testbot4][2]

    so ausgabe von index.php wird sein:

    "1 start cmd.exe 13:00 36824"

    weiß natürlich niemand was der zahlencode bedeutet.

    der bot führt den befehl aus. und berechnet dann etwas z.b:

    (36824-648)*2

    woraus sich die zahl 72352 ergibt.

    dann ruft der bot die index.php wieder auf.

    ./index.php?bot=BOTNAME&code=72352&id=1


    so die index.php prüft nun ob (72352/2)+648 gleich 36824 ist. wenn ja dann wird der auftrag in "erledigt" eingetragen..


    dabei muss man halt programmieren das die index.php noch darauf achtet das der auftrag nicht schon eingetragen wurde. sonst könnte man die db flooden.


    bots müssen auf aufträge warten und müssen sich diese nicht durch irgend wo einlogen besorgen.


    ne extra tabelle musste net extra anlegen für die botnamen. weil die ja übermittelt werden... und so alles getrennt wird.. kannste aber machen zur sicherheit nicht das wer bots mit allen möglichen namen "registriert"...

Seite 2 von 2 ErsteErste 12

Ähnliche Themen

  1. Suche nach Idee für Webseite...
    Von cl9wn im Forum Webmaster
    Antworten: 9
    Letzter Beitrag: 21.05.2010, 22:23

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •