collapse

* Links de Robótica

* Posts Recentes

Meu projecto - Arm Robot com arduino por Diogo Bento
[Ontem às 23:18]


Embedded World 2018 por beirao
[Ontem às 22:56]


Comprar transformador de +/-12Volts por edeweld
[09 de Dezembro de 2017, 22:51]


Ajuda Projecto IR / RF por dio123
[09 de Dezembro de 2017, 10:53]


Drivers Arduino UNO! por dio123
[09 de Dezembro de 2017, 10:46]


Problema em converter codigo C arduino para C + Pigpio na raspberry por vasco
[08 de Dezembro de 2017, 19:22]


Fazer seceretária por dio123
[06 de Dezembro de 2017, 14:17]


Ajuda com TRIAC por luisjustin
[05 de Dezembro de 2017, 20:10]


Como controlar display tft 2.4 mcufriend por luisjustin
[05 de Dezembro de 2017, 11:25]


Recomendação de um opamp para um DAC r2r por vasco
[02 de Dezembro de 2017, 23:50]

Autor Tópico: Ajuda com código PHP  (Lida 1104 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline m2snd

  • Mini Robot
  • *
  • Mensagens: 65
Ajuda com código PHP
« em: 28 de Julho de 2011, 19:39 »
Ola pessoal!
Preciso da vossa  preciosa ajuda.

Tenho este código em PHP com um exemplo para um Switch com opção ON/OFF.
Tentei modifica-lo para dois Switch´s com as mesmas opções ON/OFF. O problema é que ao fazer por exemplo ON no Switch1 e depois fazer, também ON no Switch2, a indicação de ON no primeiro Switch desaparece ficando apenas a indicação ON no segundo Switch. O mesmo acontece com a opção OFF. Tenho isto a correr num servidor.
Será que me podem indicar como poderei fazer para ficar a indicação independentemente em cada Switch conforme a minha opção?

Muito obrigado

Código: [Seleccione]
  <?php

    exec
('mode COM4: baud=9600 data=8 stop=1 parity=n xon=no');

    
$switch1 "";
    
$switch2 "";

    
/* Serial script for pan/tilt Camera with servos */
    /* Script by Aneal Khimani, 2-12-10 */

    //check the GET action SuperGlobal var to see if an
    //action is to be performed

    
if (isset($_GET['action'])) {

    
$switch1 $_GET['action'];
     
$switch2 $_GET['action'];

    
//Action required

    
switch ($switch1) {
    case 
"on":
    
$fp fopen("COM4""w");
    
fwrite($fpchr(97));
    
fclose($fp);
    break;

    case 
"off":
    
$fp fopen("COM4""w");
    
fwrite($fpchr(98));
    
fclose($fp);
    break;
}

switch (
$switch2) {

    case 
"on2":
    
$fp fopen("COM4","w");
    
fwrite($fpchr(99));
    
fclose($fp);
    break;

    case 
"off2":
    
$fp fopen("COM4","w");
    
fwrite($fpchr(100));
    
fclose($fp);
    break;
    }
}


?>


 <html>
    <body>
  <right>
    <p>
    <font size="4">Switch1</font><br />
    <table width="30">
   
    <tr><td><a href="<?=$_SERVER['PHP_SELF'] . "?action=on" ?>">On</a></td><td><?php if($switch1 == 'on'){echo "<b>ON</b>";} ?></td></tr>
    <tr><td><a href="<?=$_SERVER['PHP_SELF'] . "?action=off" ?>">Off</a></td><td><?php if($switch1 == 'off'){echo "<b>OFF</b>";} ?></td></tr>
  </right> 
 
 <table width="30"> 
 <font size="4">Switch2</font><br />
   
<center>
  <tr><td><a href="<?=$_SERVER['PHP_SELF'] . "?action=on2" ?>">On</a></td><td><?php if($switch2 == 'on2'){echo "<b>ON2</b>";} ?></td></tr>
    <tr><td><a href="<?=$_SERVER['PHP_SELF'] . "?action=off2" ?>">Off</a></td><td><?php if($switch2 == 'off2'){echo "<b>OFF2</b>";} ?></td></tr>

    </table>
    </p>

    </center>
    </body>
    </html>

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.404
  • Helpdesk do sitio
Re: Ajuda com código PHP
« Responder #1 em: 28 de Julho de 2011, 22:05 »
Tens um caracter para cada botão, e só envias um caracter, por isso não consegues ter informaçao de vários estados, só de um estado de cada vez, ou fazes uma pequena tabela e tens vários caracteres, cada um diz se cada switch está on ou off, ou então mandas vários caracteres numa string.
Mas isso bastava dois bits.
Avr fanboy

Offline microbyte

  • Mini Robot
  • *
  • Mensagens: 1.322
    • http://ricardo-dias.com/
Re: Ajuda com código PHP
« Responder #2 em: 29 de Julho de 2011, 10:28 »
Nada disso, só tens de passar sempre os 2 estados como argumento.

Por exemplo:
Se a tua página for do género "pagina.php?sw1=on&sw2=off", tens acesso aos estados assim:
Código: [Seleccione]
$sw1 = $_GET['sw1'];
$sw2 = $_GET['sw2'];

Depois de teres acesso aos estados, fazes o que quiseres com eles.
Depois só tens de alterar a forma como alteras a variável.

O teu <a href="..."> tem que apontar para a mesma página, mas tens de passar sempre as 2 variáveis para manter a que não queres alterar.
Por exemplo, queres alterar o botão1:

tens de fazer um link (href) para a página, com o estado do botão 1 contrário ao que está na variável $sw1 e o estado do botão 2 igual ao que está na variável $sw2.

Offline m2snd

  • Mini Robot
  • *
  • Mensagens: 65
Re: Ajuda com código PHP
« Responder #3 em: 30 de Julho de 2011, 12:44 »
microbyte, obrigado!!!!

Já tenho isto a funcionar. Agora vou ver se consigo replicar o código para mais  sw´s.

Obrigado pela tua preciosa ajuda, sem  a qual acho que não chegaria lá. O código foi quase completamente modificado.

Agora já sei a quem devo recorrer. para o PHP... :D