这是我用来为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
函数是有问题的函数。
答案 0 :(得分:-1)
按钮属于提交类型,但它们不在表单中。将按钮放入表单中
即<form> ---- </form>