GPIO php bzw html fehler

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,

    ich hab mir eine Datei (gpio.php) erstellt und in meinem fall den gpio 21 über ein Webinterface zu steuern.


    [code=php]<html>
    <head>
    <meta name="viewport" content="width=device-width" />
    <titel>GPIO ueber PHP schalten</titel>
    </head>
    GPIO 21 schalten:
    <form method="get" action="gpio.php">
    <input type="submit" value="LED ein" name="LEDein">
    <input type="submit" value="LED aus" name="LEDaus">
    </form>

    <?php


    $modeon21 = trim(@shell_exec("/usr/local/bin/gpio -g mode 21 out"));
    if(isset($_GET['LEDein'])){
    $val = trim(@shell_exec("/usr/local/bin/gpio -g write 21 1"));
    echo "licht ist an";
    }


    else if(isset($_GET['LEDaus'])){
    trim(@shell_exec("/usr/local/bin/gpio -g write 21 0"));
    echo "licht ist aus";
    }
    ?>
    </body>
    </html>
    [/php]

    Das funktioniert auch.

    Jetzt hab ich mir gedacht, das auch das ganze in html geht


    [code=php]<html>
    <head>
    <meta name="viewport" content="width=device-width" />
    <titel>GPIO ueber PHP schalten</titel>
    </head>
    GPIO 21 schalten:
    <form method="get" action="gpio.html">
    <input type="submit" value="LED ein" name="LEDein">
    <input type="submit" value="LED aus" name="LEDaus">
    </form>

    <?html


    $modeon21 = trim(@shell_exec("/usr/local/bin/gpio -g mode 21 out"));
    if(isset($_GET['LEDein'])){
    $val = trim(@shell_exec("/usr/local/bin/gpio -g write 21 1"));
    echo "licht ist an";
    }


    else if(isset($_GET['LEDaus'])){
    trim(@shell_exec("/usr/local/bin/gpio -g write 21 0"));
    echo "licht ist aus";
    }
    ?>
    </body>
    </html>
    [/php]


    Aber das funktioniert nicht…

    Meine eigentliche Frage ist… wo ist der Fehler in der html Datei ?

    Grüsse
    Rubi

    Raspberry Pi 2 Model B SBC [made in the U.K.] / microSDHC 32GB / Raspberry Pi NoIR Kamera-Modul

  • Forumsuche nach: sudo webscript


    Davon abgesehen gibt es kein <?html sondern nur <?php ... der Code am Anfang ist bereits html, auch wenn die Datei *.php heißt wird der PHP Code erst mit Umschließung von <?php $bla=0; ?> markiert. Und nein, das geht nicht in HTML da HTML selbst nichts ausführen und dynamisch erzeugen kann. HTML ist das was dem Client anzeigt wird. PHP wird nur auf Seiten des Servers ausgeführt was aber der Client nie zu Gesicht kriegt.

  • Dass du PHP-Code drin hast
    Automatisch zusammengefügt:
    Stell dir vor du fährst für mich Pakete aus, mit einem großen Transporter, sind ja auch große Pakete.
    Nun sag ich, jetzt mach das mit deinem Smart.
    Warum sollte das funktionieren?

    Wie kommst du überhaupt auf <?html ??? das macht garkeinen Sinn. Guck dir bitte mal ein PHP-Tutorial an und arbeite nicht nur mit Beispielen.

    meigrafd, nope hat damit 0 zu tun. (edit: hast du aber nun auch selbst gemerkt ^^)

    Einmal editiert, zuletzt von Horroreyes (2. August 2015 um 12:04)

  • Womit hats nichts zu tun? sudo webscript? :) Doch, hat es :D Wenn ich dieses " $val = trim(@shell_exec("...")); " seh krieg ich jedesmal son komisches Zucken im Gesicht :(
    Außerdem sähe er dort an weiteren Beispielen wie es funktioniert.

  • Ja, im Kopf hatte ich schon das gleiche formuliert als ich den Betreff gelesen hatte... aber da die PHP-Variante läuft hat das keine Relevant zum Problem, auser tatsächlich dem Beispiel.
    Aber ( rubi007) BITTE guck dir PHP und HTML-Grundlagen an, dein "Fehler" taugt für Gruselgeschichten (für Nerds).

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!