Web Cam steuern mit PHP

  • Hallo,


    ich bin neu im Forum und hoffe hier Hilfe zu finden!


    Ich bin absoluter Änfanger in Sachen HTML und PHP. Zur Zeit setze ich mich mit einem Projekt aus der aktuellen Raspberry Pi GEEK Zeitschrift auseinander.


    Ziel ist eine Raumüberwachung via Internet! Das Projekt besteht aus einem PI, einer Web Cam und einem Servomotor. Diese Komponenten sollen über das folgende Skript gesteuert werden.


    Ich habe den Code lediglich aus der Zeitschrift abgeschrieben.


    <html>
    <head><title>Web Cam</title></head>
    <body>
    <img src="http://192.168.178.24:8081">
    <?php
    $pos=$_POST['pos'];
    if(!isset($_POST['pos'])){$pos=150;}
    if(isset($_POST['left'])) {if ($pos<240){$pos=$pos + 10;}}
    if(isset($_POST['right'])) {if ($pos>60){$pos=$pos - 10;}}
    shell_exec("sudo echo 2=$pos >/dev/servoblaster");
    ?>
    <form action="" method="post">
    <input type="submit" name"left" value="Left" />
    <input type="submit" name"right" value="Right" />
    <input type="hidden" name"pos" value="<?php echo $pos?>"/>
    </form>
    </body>
    </html>


    Mein Problem ist, das der eingebettete php code nicht korrekt interpretiert wird. Das aktuelle Ergebnis präsentiert sich wie folgt


    Eigentlich soll über Left/Right der Servo bewegt werden!


    Kann mir jemand erklären, was ich falsch gemacht habe?


    Vielen Dank für eure Hilfe!


    Gruß


    Stefan

  • Schreib mal ganz an den Anfang, also vor dem html die Errorausgabe.
    Das sollte dann so aussehen:


    PHP
    1. <?php
    2. error_reporting(-1);
    3. ini_set('display_errors', true);
    4. ?>
    5. <html>
    6. <head><title>Web Cam</title></head>
    7. ...


    Danach sollte dir PHP die Fehler anzeigen.

  • Dein Code oben hat keinen PHP-Fehler, aber vielleicht dein Code den du verwendest?
    Du musst den noch mal durchgehen ob du da alles richtig gemacht hast.


    Du hast aber noch einen anderen HTML-Fehler drin, nach dem name Attribut gehört ein Gleichheitszeichen.


    Falsch

    HTML
    1. <input type="submit" name"left" value="Left" />


    Richtig

    HTML
    1. <input type="submit" name="left" value="Left" />
  • Oh mann, das mit den Gleichheitszeichen ist mir nicht aufgefallen. Betriebsblind:-) habe ich geändert.
    Ich habe mir mal den Quellcode der Seite angeschaut. Warum hört das rote "Highlighting" bei 60 auf?


    Ich habe den Code jetzt schon zig mal geprüft. Ok, dass mit den Gleichzeichen war mir auch durchgegangen :-(

  • Die Frage ist doch wohl eher, warum sieht man da den Quelltext von PHP!
    Entweder unterstützt der Server kein PHP, oder ist falsch konfiguriert oder die Datei hat die falsche Extension

  • Erstmal einmal vielen Dank euch beiden, für die schnelle und sehr gute Hilfe!


    Jetzt funzt es. Kam mir auch komisch vor, dass der php Code zu sehen war. Habe der Datei jetzt ein .php statt .html verpasst und schon lüppt es!


    Ach ja, die Leerstellen musste ich auch einfügen.


    Wünsche frohe Ostern


    Gruß


    Stefan