internetformular

  • Ich habe folgendes problem:

    wenn man z.B. OGame.de aufgerufen hat und in das erste formularfeld
    De Baum eingegeben werden soll habe ich das immer so gemacht:

    [autoit]

    Send("{Down 56}";) ;ich bin eigendlich in uni 58 aber so nimmt er das richtige.
    Send("{Tab}";)
    Send("De Baum";) ;mein benutzername
    Send("{Tab}";)
    Send("**********";) ;mein password

    [/autoit]

    Das geht meistens nicht weil dann ist das manchmal so dass zwei oder drei tabs zu viel oder zu wenig simuliert werden. Das ist dann glück wenn es mal funktioneirt.

    Also ich suche nach ungefär so einer möglichkeit:

    [autoit]

    formular ("benutzername";) = Dustin

    [/autoit]


    wenn es so etwas gibt.

    Einmal editiert, zuletzt von Dustin (14. Januar 2007 um 10:52)

    • Offizieller Beitrag

    Das geht mit der IE.au3.
    Es gibt hier im Forum mehr als genug Beispiele, die genau solche Dinge behandeln. Außerdem steht im Tutorial ein kleiner Abschnitt dazu bereit.
    Schau dich doch mal ein bisschen um, dann solltest du das umbauen können :)

    Viel Erfolg,
    peethebee

  • Hi Dustin,

    ich finde auch nach dem Edit ist das Informationsangebot nicht viel besser geworden ;).
    Guck Dir mal die Funktion _IEFormElementOptionSelect an.

  • hallo ich habe mich nochmal drangewagt und habe jetzt ein problem:
    auf ogame.de is eine frameseite und die müsste ich einzeld haben um die forms und den dropdown auszufüllen nur wenn ich versuche /home.php anzuzeigen springt automatisch auf die startseite zurück.aber nur im Quelltext von /home.php sind die forms und der dropdown.

    Spoiler anzeigen

    das iss der Quelltext von der starseite:


    und das iss der teil mit den forms und dem dropdown von /home.php:


    ich hoffe mal einer kann mir jetzt helfen.

  • dein proböem iss dieser code hier:

    <script language="JavaScript">

    if (parent.frames.length == 0) {
    window.location = "/";
    }

    </script>


    Das überprüft ob Frames vorhanden sind. Wenn keine da sind lädt es ogame.de/
    und wenn doch, dann lässt es dich in ruhe.
    hätte auch ne Lösung:
    Javascript am Browser ausschalten (funzt..aber keine Ahnung ob man sich mit ausgeschaltetem Javascript noch einloggen kann)

    Dieser Beitrag wurde 9521 mal editiert, zum letzten Mal von Blubkuh: Morgen, 02:28.

    [autoit]

    If Not $Elephant Then $Irelephant = True

    [/autoit]
  • wenn man javascript ausstellt funzt es nicht mehr.
    hmm ?(
    gipts nich irgend ne möglichkeit das zu umgehen ohne javascript auszustellen?

  • endlich ma was wovon ich auch ma ahnung habe ^___^

    also...
    andere möglichkeit:

    Du erstellt eine eigene HTML-Datei in der du ein Formular einbettest, wo man Username, Passwort und Uni einstellen muss.


    Spoiler anzeigen

    <form name="loginForm" action="http://www.ogame.de/home.php" method="POST">
    <input type="hidden" name="v" value="2">
    <input type="hidden" name="button.x" value="*RANDOM ZWISCHEN -5 bis 33">
    <input type="hidden" name="button.y" value="*RANDOM ZWISCHEN -1 bis 10">
    <span>
    <select tabindex="1" name='universe' class="eingabe" style="width:144px;">
    <option value="">Universum auswählen...</option>
    <option value="uni1.ogame.de" >

    1. Universum</option>
    <option value="uni2.ogame.de" >
    2. Universum</option>
    <option value="uni3.ogame.de" >
    3. Universum</option>...

    ...<option value="uni64.ogame.de" >
    64. Universum</option>
    <option value="uni65.ogame.de" >
    65. Universum</option>
    <option value="uni66.ogame.de" >
    </select>
    </span>
    </form>
    <td style="padding-right:3px;">
    <span><input tabindex="2" class="eingabe" maxlength="20" name="login" alt=Spielername style="width:111px;top:0px"/></span>
    <td>
    <span><input tabindex="3" maxlength="20" type="password" class="eingabe" name="pass" style="width:113px;top:0px" alt=Passwort /></span>
    <td style="padding-top:2px;">


    Das ist es wie es grob sein sollte.
    KA ob es so funktionieren kann aber man kanns ja ma ausprobieren :)

    Dieser Beitrag wurde 9521 mal editiert, zum letzten Mal von Blubkuh: Morgen, 02:28.

    [autoit]

    If Not $Elephant Then $Irelephant = True

    [/autoit]
  • also ersmal ein riesiges thx an dich wenn du jetzt noch die funktion einbauen würdest, dass mn sich über das wirklich einloggen kann währe das echt nett. weil zur zeit passiert noch nix wenn man enter drückt.

  • sry aber da muss ich dich jetzt enttäuschen.
    hab einfach den quelltext von ogame genommen und minimal verändert.
    das konnte so nicht wirklich fuktionieren x)
    Hatte ja auch gesagt das es ungefähr so aussehen muss. bin leider seit Jahren schon nicht mehram html proggen x)
    also bitte jemanden fragen der bisl mehr damit amcht als ich ^__^ (gunfood :P)

    Hoffe aber das mein Ansatz das Problem zu lösen richtig war :)


    mfG Blubkuh

    Dieser Beitrag wurde 9521 mal editiert, zum letzten Mal von Blubkuh: Morgen, 02:28.

    [autoit]

    If Not $Elephant Then $Irelephant = True

    [/autoit]

    Einmal editiert, zuletzt von Blubkuh (29. Juli 2007 um 16:49)

  • Zitat

    Hoffe aber das mein Ansatz das Problem zu lösen richtig war smile


    dafür war ja das riesige thx :)

    dann frag ich jetzt mal einen der sich damit auskennt. also gunfood kannst du mir helfen?
    ok ich versuchs auch ma selber glaub zwar das ich das nich hinkrich aber egal

    Edit: es darf auch jeder andere gerne helfen das war jetzt nich nur an gunfood :D

    Einmal editiert, zuletzt von Dustin (30. Juli 2007 um 10:08)

  • das sollte alle fragen zum formularausfüllen bei ogame beantworten....bitte ganzen tread durchlesen


    der snoozer
    PS:könnte es trotzdem gern auf eine externe seite basteln..ist nicht das problem.....


    edit:das war noch zum alten quelltext sollte aber trotzdem weiterhelfen können.....

  • ich habe das mal ausprobiert aber irgendwas funktioniert nich so richtich ich habe jetzt am anfang:

    [autoit]

    $IE = _IECreate("http://www.ogame.de/");, 0, 0)
    $Frame = _IEFrameGetObjByName($IE, "mainframe")
    $uni = _IEFormElementGetObjByName($Frame, "universe")
    $name = _IEFormElementGetObjByName($Frame, "login")
    $pswrd = _IEFormElementGetObjByName($Frame, "pass")

    [/autoit]


    das funktioniert aber noch nich. ?(

    kannst du mir das denn mal "auf eine externe seite basteln"?

    ich hoffe das es dann funktioniert. :)


  • mhhh schau dir am besten nochmal an was du machen willst...du versuchst zurzeit vom frame ein form-element zu bekommen...das kann nicht wirklich klappen ;)

    Spoiler anzeigen
    [autoit]

    $IE = _IECreate("http://www.ogame.de/");, 0, 0)
    $oFrame = _IEFrameGetObjByName($IE, "mainframe")
    $oForm = _IEFormGetCollection($oFrame, 0);hier die wichtige änderung!!!!
    $uni = _IEFormElementGetObjByName($oForm, "universe")
    _IEFormElementOptionSelect($uni, "1. Universum", 1, "byText")
    $name = _IEFormElementGetObjByName($oForm, "login")
    _IEFormElementSetValue($name, "username")
    $pswrd = _IEFormElementGetObjByName($oForm, "pass")
    _IEFormElementSetValue($pswrd, "password")
    $oForm.fireEvent("onSubmit");wichtig nicht vergessen!!!!!!!!
    _IEFormSubmit($oForm);sollte funktionieren wenn nicht siehe thread oben(der link)

    [/autoit]

    ich hoffe das hilft weiter :)

    edit:sorry war nen kleiner fehler drinn....:S