为什么我的PHP函数什么都不做?

时间:2016-04-11 22:20:22

标签: php html networking raspberry-pi3

这是我用来为en Electronics类托管服务器的PHP脚本。按钮只是用来点亮不同的LED。

<!DOCTYPE html>
<HTML>
<BODY>
    <CENTER>
    <!-- Header -->
    <H1>Raspberry Pi LED Contorl Utility</H1>
    <body style="background-color: grey;">

    <!-- Configuring Pins -->
    <?php
    $pins = array(22,27,4,23,24,18,17);
    $status = array(0,0,0,0,0,0,0);

    //-----Decoration-----  
    for($i=0; $i<count($pins); $i++){
    $bcm = $pins[$i];
    system('gpio -g mode '.$bcm.' out');
    echo("<img id='LED_'.$bcm.'' src='/res/dots/LED_".$bcm.".png'/>");
    } ?>

   <br>
   <br>
   <button type="submit" name="up" style="background-color:transparent; border-color:transparent;">
     <img src="res/buttons/up.png" height="40"/>
       </button>
   <br>
   <button type="submit" name="left" style="background-color:transparent; border-color:transparent;">
     <img src="res/buttons/left.png" height="40"/>
       </button>
   <button type="submit" name="right" style="background-color:transparent; border-color:transparent;">
     <img src="res/buttons/right.png" height="40"/>
       </button>
   <br>
   <button type="submit" name="down" style="background-color:transparent; border-color:transparent;">
     <img src="res/buttons/down.png" height="40"/>
       </button>

<?php
$bcm = 27;
system('gpio -g write '.$bcm.' 1');
if(isset($_POST["up"])){$bcm=move($bcm,1);}
if(isset($_POST["down"])){$bcm=move($bcm,3);}
if(isset($_POST["left"])){$bcm=move($bcm,2);}
if(isset($_POST["right"])){$bcm=move($bcm,0);}
?>

</CENTER>
</BODY>

<?php
function move($pin,$dir){
if($pin==22 AND $dir==3){
    system('gpio -g write 27 1');
    system('gpio -g write 22 0');
    $pin = 27;
}elseif($pin==27 AND $dir==3){
    system('gpio -g write 4 1');
    system('gpio -g write 27 0');
    $pin = 4;
}elseif($pin==27 AND $dir==1){
    system('gpio -g write 22 1');
    system('gpio -g write 27 0');
    $pin = 4;   
}elseif($pin==27 AND $dir==0){
    system('gpio -g write 23 1');
    system('gpio -g write 18 1');
    system('gpio -g write 27 0');
    $pin = 23;
}elseif($pin==4 AND $dir==1){
    system('gpio -g write 27 1');
    system('gpio -g write 4 0');
    $pin = 27;
}elseif($pin==23 AND $dir==0){
    system('gpio -g write 17 1');
    system('gpio -g write 23 0');
    system('gpio -g write 18 0');
    $pin = 17;
}elseif($pin==23 AND $dir==2){
    system('gpio -g write 27 1');
    system('gpio -g write 23 0');
    system('gpio -g write 18 0');
    $pin = 27;
}elseif($pin==17 AND $dir==2){
    system('gpio -g write 23 1');
    system('gpio -g write 18 1');
    system('gpio -g write 17 0');
    $pin = 23;
}
return $pin;
} ?>

不要担心缩进错误,它们没问题,这里的格式化很烦人。我试图在函数中添加print语句和各种各样的东西,什么都没有出现。灯光根本没有变化,似乎甚至没有调用该功能。 move函数是有问题的函数。

1 个答案:

答案 0 :(得分:-1)

按钮属于提交类型,但它们不在表单中。将按钮放入表单中  即<form> ---- </form>