Kom ihåg mig?
Home Menu

Menu


exec eller motsvarande i PHP

Ämnesverktyg Visningsalternativ
Oläst 2010-10-02, 12:44 #1
Zajber Zajber är inte uppkopplad
Nykomling
 
Reg.datum: Jan 2009
Inlägg: 9
Zajber Zajber är inte uppkopplad
Nykomling
 
Reg.datum: Jan 2009
Inlägg: 9
Standard exec eller motsvarande i PHP

Tja, brukar inte vara så flitig här då jag mestadels gör hårdvara nu för tiden. Detta har dock gett mig problem.

Jag har utvecklat en enhet som via com-porten (Windowsiska) läser kommandon från min linux-server. Som sedan styr el-uttag och lite annat roligt. Det jag vill göra är att skapa ett webbinterface i php som jobbar mot min konsoll-mjukvara.

Jag har alltså skrivit ett eget program som skickar korrekta strängar till min enhet direkt från kommandotolken i unbuntu.

Jag försöker att köra exec i PHP utan att få detta att lyckas. Även shell_exec och passthru fallerar. Jag får absolut ingen reaktion alls. Det tar dock flera sekunder innan sidan slutar att laddas och jag kan prova igen.

<?php
$output = shell_exec('/var/www/a2');
echo "<pre>$output</pre>";
?>

Som ni ser ligger mitt program "a2" direkt under wwwroot just nu och har alla rättigheter som man kan tänka sig för att försöka få igång det. Jag har även testat olika varianter av './a2' './var/www/a2'
Kör jag en "ls" eller "uptime" funkar det fint inga problem inte, så jag gjorde det förbjudna och kopierade mitt program till /bin och provad att köra en 'a2' direkt, dock med samma resultat som innan.

Jag är egentligen inte intresserad av någon output eller input i första taget. Men just nu så kommer det ingenting fram till min comport. Mitt program skickar egentligen bara strängen just nu och inget annat.

Hilfe bitte..
Zajber är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-10-02, 13:24 #2
objx objx är inte uppkopplad
Medlem
 
Reg.datum: Mar 2008
Inlägg: 154
objx objx är inte uppkopplad
Medlem
 
Reg.datum: Mar 2008
Inlägg: 154
Jag brukar köra:

exec("/kommando/eller/program/", $results);

print "<pre>";
print_r($results);
print "</pre>";

Fungerar för mig iaf.
objx är inte uppkopplad   Svara med citatSvara med citat
Oläst 2010-10-03, 00:51 #3
Zajber Zajber är inte uppkopplad
Nykomling
 
Reg.datum: Jan 2009
Inlägg: 9
Zajber Zajber är inte uppkopplad
Nykomling
 
Reg.datum: Jan 2009
Inlägg: 9
Jahapp. Då kan jag svara på detta själv så folk slipper stöta på samma fel som mig.

Jag kollade vidare lite i min error.log för apache och hittar följande:
open_port: Unable to open /dev/ttyS0 - : Permission denied

Detta fixas lätt genom att från kommandotolken ändra rättigheterna för ttys0:

sudo chmod o+rw /dev/ttyS0


Klart!
Zajber är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 05:01.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017