Announcement

Collapse
No announcement yet.

PHP & Python: Variablenaustausch?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • PHP & Python: Variablenaustausch?

    Moin moin,

    ich möchte, dass der Benutzer über PHP eine IP angibt. Diese IP soll denn über ein Python-Script angepingt werden. Das Python-Script soll wieder rum dem PHP-Script mitteilen, ob Host aktiv oder nicht.

    HTML/PHP:
    Code:
    <html>
    <head>
    <title>Scan for IP's</title>
    </head>
    <body>
    
    <FORM NAME = "ipcheck" METHOD = "POST" ACTION = "index.php">
    
            <INPUT TYPE = "TEXT" VALUE = "IP-Addresse" NAME = "ipaddr"> bis
            <INPUT TYPE = "Submit" VALUE = "Scannen" NAME = "Submit1">
    
    </FORM>
    
            <?PHP
                    $ip = $_POST['ipaddr'];
                    $result = shell_exec('python /username/var/www/scan/ping.py ' . $ip);
                    print($result);
            ?>
    
    </body>
    </html>
    Mit diesem PHP-Script glaube ich die Variable $ipaddr an Python zu übergeben.

    PYTHON
    Code:
    #!d:/username/var/www/scan/python.py
    import sys
    import os
    
    print("Content-Type: text/plain\n\n")
    
    ip = sys.argv[1]
    if os.system("ping -c 1 " + ip) == 0:
            print("VERFÜGBAR")
    else:
            print("NICHT VERFÜGBAR")
    Wie kann ich im Python-Script nun auf die Variable $ipaddr zugreifen? Und "VERFÜGBAR" entsprechend auch wieder ausgeben?
    Orientiert habe ich mich hieran: http://stackoverflow.com/questions/1...-php-to-python

    Lieben Gruß
    Zuletzt editiert von kogen; 25.09.2015, 11:14.

  • #2
    Und warum wird dazu Python bemüht und da nicht gleich von einem PHP-Script erledigt?
    Davon abgesehen wird der Aufruf auch ausgeführt, wenn keine IP-Adresse eingegeben wurde. Also bsp. beim laden der Seite
    Christian

    Comment


    • #3
      Das langfristige Ziel ist es, dass Python verfügbare Hosts über SNMP abfragt und an PHP bestimmte Eigenschaften zurück gibt.

      Comment


      • #4
        http://www.python-kurs.eu/sys_modul.php

        sys.argv ist eine Liste mit dem Funktionsnamen als erstem Element gefolgt von den Argumenten in der Reihenfolge, in der sie auf der Kommandozeile aufgeführt worden sind.
        Christian

        Comment

        Working...
        X