Sida 1 av 1

php och web

Postat: 09 okt 2009, 20:00
av mwd123
Hej

Har haft problem med att lyckas få till själva php scriptet som jag funnit på denna sidan, så att man kan ha t.ex en bild som visar om man tänt eller släckt lamporna via On eller Off knapparna på sidan.

Skulle gärna vilja att vid ett tryck på "On" så ändras en status till on och en bild visar det, och även när man trycker "Off" så skadet ändra till släckt osv.

Hur löser man detta smidigast? då det styrs via "explode" osv så får jag inget grepp om det :(

Vore MYCKET tacksam ifall det finns någon vänlig själ därute som har lite tid/lust att ev kanske försöka beskriva hur man ska göra.

Tack på förhand

Mvh Magnus

bifogar indexphp.rar
indexphp.rar
(1.05 KiB) Nerladdad 170 gånger

Re: php och web

Postat: 09 okt 2009, 23:19
av Plutonium
Kan du posta ragmenten som berör ditt problem från php filen i forumet?

Re: php och web

Postat: 10 okt 2009, 09:34
av mwd123
Ok vi börjar i slutet på index.php.

Jag kan ingenting om PHP-kod (eller annan kod heller) :) som ni förmodligen redan förstått ;P

Det jag alltså vill är att när jag trycker på "On" i webläsarn så vill jag att en lampa som är släckt, ska tända sig

case "on":
$command=$binare.' '.$tellstick_path.' '.$_POST["reciever_protocol"].' '.$_POST["reciever_id"].' 1';
$thestuff=system($command);
break;

Min tanke var då att lägga in nån typ av echo cmd efter commandot som körs. jag har skapat en mapp som heter NEXA och där i har jag alla enhets id. t.ex A 1 A 2 osv. och så har jag även en mapp som heter STATUS och lika där alla enhets ID.

case "on":
$command=$binare.' '.$tellstick_path.' '.$_POST["reciever_protocol"].' '.$_POST["reciever_id"].' 1';
$command=/bin/echo 1 > "/var/www/html/rrdtool/NEXA/reciever_id"; (är det $nånting ? vet inte hur det funkar.)
$command=/bin/echo "<img src=\"pon.gif\" alt=\"På\">" > /var/www/html/rrdtool/STATUS/reciever_id;
$thestuff=system($command);
break;

sen så gör man lika i case "off" fast ändrar till poff.gif och alt= av osv.

Alternativt skapa en echo.sh som har de 2 raderna i sig så behöver man bara köra ett kommando. hur löser jag dock detta med att den ska ta rätt ID ? om jag trycker On på t.ex A 5, hur får jag den att skicka echo kommandot till just A 5 ?

Tanken med nexa mappen och reciever ID är ju att jag kan använda mig av andra script mm för att se om en lampa är tänd eller inte eftersom det ska stå 0 eller 1 i filen beroende på om den är släckt eller tänd.

status mappen hade jag ju tänkt var så att man skulle kunna hämta på eller av från. så när man kör On så skickas poweron.gif i status, och när man kör off så skickas poweroff.gif in i statusen för rätt ID.

Tanken var då på nåt vis. att högre upp i koden:

print $grunka." : </td><td nowrap=\"NOWRAP\">\n";
print "<input type=\"submit\" name=\"action\" value=\"on\" class=\"searchButton\">\n";
print "<input type=\"submit\" name=\"action\" value=\"off\" class=\"searchButton\">\n";

Att man ev här ska kunna köra så att den "tar" status från /var/www/html/rrdtool/NEXA/reciever_id

print $grunka." : </td><td nowrap=\"NOWRAP\">\n";
print $status/reciever_id nånting (då ska alltså detta skrivas hit: "<img src=\"pon.gif\" alt=\"På\">" (om statusen är Av i filen så blir det poweroff.gif och Av som alt
print "<input type=\"submit\" name=\"action\" value=\"on\" class=\"searchButton\">\n";
print "<input type=\"submit\" name=\"action\" value=\"off\" class=\"searchButton\">\n";

Har som sagt väldigt dålig koll på php, så den som är duktig på php fattar nog direkt hur man ska göra.

Tack för ditt intresse plutonium! jag ser fram emot din hemkomst!! :)

Mvh Magnus

Re: php och web

Postat: 10 okt 2009, 13:58
av Plutonium
Hej Magnus :wink:

Vi skulle kunna banta ner koden och göra den lite enklare ser jag.

Jag hade nog gjort på följande:

Kod: Markera allt

<?php

echo "<a href=\"$_SERVER['PHP_SELF']?nexa=hallen&status=on\">Hallen På</a><br>";
echo "<a href=\"$_SERVER['PHP_SELF']?nexa=hallen&status=off\">Hallen Av</a><br>";

echo "<a href=\"$_SERVER['PHP_SELF']?nexa=sovrummet&status=on\">Sovrummet På</a><br>";
echo "<a href=\"$_SERVER['PHP_SELF']?nexa=sovrummet&status=off\">Sovrummet Av</a><br>";



 if (isset($_GET['nexa']) && $_GET['status']){

       if ($_GET['nexa'] == "hallen" && $_GET['status'] == "on") {
              system("rfcmd /dev/ttyUSB0 NEXA A 1 1 &");
              echo "Lampan i Hallen är nu tänd";
       }
       if ($_GET['nexa'] == "hallen" && $_GET['status'] == "off") {
              system("rfcmd /dev/ttyUSB0 NEXA A 1 0 &");
              echo "Lampan i Hallen är nu släckt";

       if ($_GET['nexa'] == "sovrummet" && $_GET['status'] == "on") {
              system("rfcmd /dev/ttyUSB0 NEXA A 2 1 &");
              echo "Lampan i Hallen är nu tänd";
       }
       if ($_GET['nexa'] == "sovrummet" && $_GET['status'] == "off") {
              system("rfcmd /dev/ttyUSB0 NEXA A 2 0 &");
              echo "Lampan i Hallen är nu släckt";
 }
?>
Nu har jag ingen som helst aning om koden ovan fungerar. Men med denna kod så skall du få upp fyra st länkar, om du klickar på någon av dem så ska det med stor osäkerhet hända något. I värsta fall så fungerar inte sidan alls, men då kan du med denna kod snutt felsöka mycket enklare.

Kod: Markera allt

error_reporting(E_ALL);
som du lägger längst upp på sidan, alltså under <?php raden.

Detta utgör själva grunden för att styra lampor, sen finns det en uppsjö hur man skriver en kodsnutt en del längre och en del kortare, men jag tror jag har skrivit så enkelt som möjligt för att förstå konceptet.

Re: php och web

Postat: 10 okt 2009, 19:11
av mwd123
Fungerade inte :)

Dock så gillar jag den gamla koden, då det är väldigt enkelt att lägga till en ny nexapryl, bara att lägga till t.ex sovrum NEXA A 6 i pryttels.txt så ligger den med på webben.

Vill som sagt att ha en liten funktion som tänder en lampa när man trycker på on. verkar vara svårt, ingen som kan? ;)

Mvh Magnus

Re: php och web

Postat: 11 okt 2009, 00:53
av Niklas
Det är inga problem
Jag har för mig att du har mailat mig. Glömde jag svara? :-)

Jag har en sida jag kan komma åt överallt där jag ser om mina prylar är på eller av.
Jag kör detta mot en databas. Jag har lite script som körs automatiskt.
Bl.a. så tänds min belysning beroende på hur ljust det är ute och mitt element i sovrummet styrs av servern.
Då kan jag se via hemsidan om prylen är aktiverad eller inte. Jag kan även välja att manuellt sätta på eller stänga av grejerna. Att lägga till en enhet är enkelt. Det är bara att regga den i databasen.

Du har ingen mysql-server uppe och snurrar på burken?

Re: php och web

Postat: 11 okt 2009, 09:30
av mwd123
Tjena!

Jo jag kör mysql.

Du glömde nog svara på mitt mail :wink:

Re: php och web

Postat: 12 okt 2009, 19:47
av mwd123
Problemet fixat! stort tack till sm4wdq!

Re: php och web

Postat: 04 dec 2009, 15:49
av Hoffan
Å hur blev lösningen då??

*Nyfiken*

Re: php och web

Postat: 08 jan 2010, 16:04
av BjörnH
En nyfiken till. Vill slippa uppfinna hjulet igen. Speciellt när min PHP-kunskap är liten.