Tutorial - Wie sende ich Variablen aus meinem Script an eine PHP-Datei?

  • In deinem Autoit-Script erstellst du die Funktion InetGet() mit folgend, aufgebauter Url:

    -> www.<...>.de/<dateiname>.php?<variablenname>=<variablenwert>

    <dateiname> = Der Name deiner PHP-Datei
    <variablenname> = Ein Name der der Variable zugewiesen wird, frei wählbar
    <variablenwert> = Wert der Variable aus dem Autoit-Script

    Beispiel:
    Ich nenne meine PHP-Datei testhalber einmal "test.php". In meinem Autoit-Script habe ich die Variable $string mit dem Wort "Hallo". Diese soll später in der PHP-Datei verfügbar sein.
    Die Url würde dann folgendermaßen aussehen:

    www.<...>.de/test.php?string=Hallo

    Nun steht im Autoit-Script:
    $string = "Hallo"
    _InetGetSource("www.<...>.de/test.php?string=" & $string)


    Erstelle nun eine neue PHP-Datei.
    Jetzt fügen wir den PHP-Code ein, der uns später die Variablen aus der Url, in die PHP-Datei einließt.

    <?php
    $variable = $HTTP_GET_VARS["<variablenname>"]; // Get-Methode aus PHP, eine bestimmte Art Variablen zu übergeben
    ?>

    Nun ist die Variable ("<variablenname>") aus der Url in das PHP-Script eingelesen und kann nun überall unter der Variable ("$variable") verwendet werden

    Zum Testen könnt ihr einfach mit der "echo"-Funktion den Variablenwert ausgeben lassen.

    <?php
    $variable = $HTTP_GET_VARS["<variablenname>"];

    echo $variable;
    ?>

    Ich hoffe ich kann Euch damit etwas helfen! ;)

    Lg Jautois

    7 Mal editiert, zuletzt von Jautois (9. Juni 2009 um 17:20)

  • Damit bis du auf der sicheren Seite von alten PHP Versionen, aber in der Zukunft wird das Array vielleicht ganz entfernet werden. Ich denk auch nicht das es empfehlenswert ist eine PHP Version am laufen zu haben die kein $_GET unterstützt. Von daher $_GET!

  • Hallo.

    Tut mir leid, aber das funktioniert nicht.

    Wenn ich über ganz normalen Link aufrufe ist alles wunderbar.
    Aber AutoIT macht nichts. Bist du sicher, dass es mit InetGet getan ist?

    mfg Nuke

    AutoIT rockt! :rock:

  • InetGet funktioniert irgendwie nicht immer mit Parametern in der URL. Verwende einfach auch hier mal _InetGetSource ;)

  • Wenn du mir noch das Php-Script zeigst, kann ich dir denke ich den Fehler sagen :)

    Edit: Klar kannst du auch Daten löschen, häng noch eine Variable an den Link an. Wenn diese Variabel 1 dann in DB schreiben, wenn 0 dann löschen.

  • Das ist der Code:

    PHP
    <?php
    $variable = $HTTP_GET_VARS["<variablenname>"] // Get-Methode aus PHP, eine bestimmte Art Variablen zu übergeben
    ?>
    <?php
    $variable = $HTTP_GET_VARS["<variablenname>"]
    
    
    echo $variable;
    ?>


    Also ich habe 0 Ahnung von PHP! Kann ich mit AutoIt auch den Text abfragen der Schon in der PHP steht? Also ich will damit eine Serverliste machen für ein Onlinespiel, wo man dann gucken kann was alles für server on sind
    und wenn die server ausgehen soll die ip davon natürlich auch wieder gelöscht werden!

    mfg. Jam00

  • Also mal generell in Php startet der Code mit <?php und endet mit ?>. Du kannst alles also auch so schreiben:

    PHP
    <?php
    $variable = $HTTP_GET_VARS["<variablenname>"];
    echo $variable;
    ?>

    Wenn obiges nicht funktionieren sollte. Dann versuch mal diesen:

    PHP
    <?php
    $variable = $_GET["<variablenname>"];
    echo $variable;
    ?>

    Du bist dir auch darüber bewusst, dass du den String <variablenname> ändern musst in den Namen deiner Variable?

    Wenn du also im Php-Script die Variable "ip" nennst, muss diese auch im Link so heißen.

    Beispiel:
    (ip = 199.124.243.12)

    .../deine_php_datei.php?ip=199.124.243.12

    PHP
    <?php
    $variable = $_GET["ip"];
    echo $variable;
    ?>

    Das ";" muss außerdem an sogutwie jedes Zeilenende ...

    Hoffe das hilft ;)