Hallo,
ich bin ein Fan von diesem Forum und habe bis jetzt (fast) alle Antworten meine Probleme gefunden. Bei diesem Problem bin ich bis jetzt noch erfolglos gewesen:
Also, ich rufe aus einem PHP script mit exec() ein C-Programm auf, das wiringPi verwendet. Grundsätzlich werden alle Ausgaben des Programmes auch von PHP als Ausgabe weitergeleitet. Sobald im Programm aber wiringPiSetup() aufgerufen wird, sind alle folgenden Ausgaben nicht mehr auf der Webpage sichtbar . Das Programm selbst fuktioniert jedoch und läuft bis zum Ende durch, d.h. der GPIO-Pin wird auf HIGH gesetzt.
Wer hat dazu eine Idee?
Hier der code des C-programmes:
/* C-program using wiringPI */
#include <stdio.h>
int main(int argc, char *argv[]) {
printf("this line is visible in PHP output\n");
if(wiringPiSetup() < 0) {
printf("ERROR: calling wiringPiSetup\n");
return -1;
}
printf("this line is not visible in PHP output any more\n");
//however, this works
pinMode(4, OUTPUT);
digitalWrite(4, 1);
}
Alles anzeigen
und hier das php Script:
[code=php]<html><body><h1>IO Test</h1>
<p>
<?
$result = exec("sudo ./testprogram");
echo($result);
?> </p></body></html>[/php]