Onmousedown

  • Onderwerp starter Onderwerp starter 4ilo
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

4ilo

Gebruiker
Lid geworden
20 mrt 2011
Berichten
9
Ik wil op mijn raspberry pi via javascript en een bash script een aantal gpio poorten aansturen door op een afbeelding te klikken in de browser. Hiervoor gebruik ik hetvolgende script.

Code:
<html>
<head>
<script Language="Javascript">
function set0()
{
    document.location="cgi-bin/set0.cgi";
}
function set1()
{
    document.location="cgi-bin/set1.cgi";
}
function set01()
{
    document.location="cgi-bin/set01.cgi";
}
function clear01(event)
{
    document.location="cgi-bin/clear01.cgi";
}
</script>
</head>
<body>
    <div style="text-align:center">
    <h1>Raspberry Pi GPIO</h1>

    <img src="/forward.jpg" id="f" onmousedown="set01()" onmouseup="clear01(event)">
<br>
    <img src="/left.jpg" id="l" onmousedown="set0()" onmouseup="clear01(event)">
    <img src="/right.jpg" id="r" onmousedown="set1()" onmouseup="clear01(event)">
<br>
    <img src="/stop.jpg" id="s" onmousedown="clear01(event)" onmouseup="clear01(event)">
    </div>

</body>
</html>

Als ik deze code gebruik, laad hij telkens in de browser het script dat opgeroepen wordt, ipv op deze pagina te blijven.

Hoe kan ik dit oplossen?

Olivier
 
Ik vermoed dat je server verkeerd staat ingesteld waardoor hij niet weet dat hij .cgi bestanden moet uitvoeren in plaats van downloaden. Ik weet er niet heel veel van maar misschien kan ik helpen. Welke server software gebruik je?
 
Laatst bewerkt:
Ik heb op mijn raspberry pi dit geinstalleerd als webserver:
Code:
sudo apt-get install apache2 php5 libapache2-mod-php5
 
Apache dus. Het configuratiebestand van apache is apache2.conf, je kunt het via de terminal openen met
Code:
sudo nano /etc/apache2/apache2.conf

Onderaan in het bestand (ik weet eerlijk gezegd niet zeker of dat beste plek is) voeg je de volgende regels toe.
Code:
<Directory /pad/naar/cgi/map>
 Options ExecCGI
 SetHandler cgi-script
 </Directory>
Daarmee weet apache dat er in die map bestanden zitten die moeten worden uitgevoerd als cgi scripts.

Het enige wat je dan nog moet doen is de server opnieuw opstarten met
Code:
sudo service apache2 restart

Dat zou moeten werken.
 
Laatst bewerkt:
Ok, bedankt. Ik zal straks ik uitesten of dit het probleem oplost.

Olivier
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan