-
Ihr habt nicht zufällig eine Idee warum WiringPi via shell_exec nicht funktioniert?
Wenn ich in der shell als user www-data den Befehl selbst auführe geht es..und shell_exec an sich klappt mit anderen Befehlen auch.
Bin grad ein wenig am verzweifeln.. x_X
-
Ändere mal die Gruppe und die Zugehörigkeit der PHP Datei auf www-data.
PHP führt im Safe-Mode keine Seiten aus die nicht die selbe Gruppe haben wie der Webserver.
Das Problem hatte ich auch bei meiner Upload-Seite :)
Das machst du mit chown www-data.www-data /var/www/Zieldatei
-
Hab das Problem inzwischen gefunden.
Mußte in shell_exec den vollständigen Pfad zu den WiringPi bin's angeben.
-
Ah ok.
Was fürn Code verwendest du den?
Weil ich versuche das mit Checkboxen zu machen aber irgendwie funktioniert die Übergabe nicht so wie ich es will....
Vielleicht findest du den Fehler ja:
Das hier ist die HTML-Datei:
Code:
<html>
<head>
<title>
Raspberry Pi Webserver
</title>
</head>
<h1>
<font color="red">
Raspberry Pi Webserver
</font>
</h1>
<body>
<form action="IO.php" method="post">
<input type="checkbox" name="GPIO[]" value="1"> GPIO 0 aktivieren<p>
<input type="submit" value="Senden"/>
</form>
</body>
</html>
und das hier die PHP:
Code:
<html>
<?php
$check = $_GET['GPIO'];
echo $check;
?>
</html>
Btw....habe jetzt auch mal die WiringPi Libary installiert und alles.
Sieht ja recht brauchbar aus :)
-
Ich bin gestern nicht mehr zu viel gekommen wegen dem shell_exec und php zeugs..
Aber auf den ersten Blick..
- Du hast bei der Checkbox in value eine 1, da musst du darauf achten dass es nicht bedeutet dass sie 'gecheckt' ist. Aber das glaub ich weisst du eh.
- Mit GPIO[] wird die Uebergabe ein Array, in deiner php behandelst du es nur als normale Variable.. echo $check; wird dir glaub ich nur die Zeichenkette "Array" ausgeben.
-
Das mit der Checkbox weiß ich. Das war auch nur ein Testwert.
Das mit dem Array wusste ich allerdings nicht.
Wie gebe ich das den korrekt aus, weil im Moment erscheint im Browser nur ne leere Seite.
-
echo $check[0]; sollte dir die '1' aus dem Feld value zurueck geben.
Allerdings solltest du glaub ich auch so den String "Array" sehen.
Setz mal in der php.ini die php-Fehlermelungen auf 'on', die sind default deaktiviert.
Ich bin noch unschluessig wie ich das mit den checkboxen am feinsten mach.
-
Die Seiten habe ich im Moment nur auf meinem Rechner.
Die sind noch gar nicht auf meinem Pi. Ich möchte die erst dadrauf kopieren wenn sie funktionieren (macht weniger Arbeit ^.^).
Meine Idee war eigentlich für jeden GPIO ne Checkbox zu machen und wenn die gesetzt ist wird der Pin geschaltet,
Und später wollte ich dann noch ne Auswertung der Eingänge machen. Aber dafür brauche ich erstmal bisl PHP Erfahrung ^.^
von daher taste ich mich da langsam an die Sache ran.
-
Edit: Link entfernt..
Das Auslesen klappt schon, aber ich glaub ich werde fuer jede checkbox ein eigenes Formular-tag machen..dann kann ich auto-send im on-click event machen und brauch keinen send button..
-
Kannste mir mal den Code zeigen den du dafür benutzt?