2017-09-24 5 views
1

私はプログラミングのこの分野では非常に初心者なので、どんな指針も高く評価されます。私は自分のRasp Piのためにカメラのストリームを持っています。私は私の問題を3つの段階に分けた。ラズベリーパイのPHP/HTML通信

1)単純な2つのボタンのHTML GUI。カメラ度の値ボックスがあります。

2)htmlでボタンを押してテキストファイルに書き込むたびに値を読み取るPHPスクリプト。

3)テキストファイルを読み込んでそれに応じてカメラを移動するPythonスクリプト。

私はサーボを回すためのステップ3を完了しました。私はhtmlのステップ1として小さなGUIを作った。私の主な関心事は、クライアントサイドのHTMLページをPHPサーバ側にリンクすることです。私の専門知識はここで終わります。私は自分のPiでホストされているウェブサイトを持っているので、私が望むのは、シンプルなWebページを使ってカメラの位置を制御できるようにすることです。 htmlがPHPに話すための簡単な方法はありますか?最初にhtmlボタンからデータを取得できる場合は、テキストファイルに値を書き込むための簡単なPHPコードを書くことができます。

正確には、ボタンは実際の数値を渡すことはありません。増加または減少したハードコードされた値(カメラの角度)の増分/減分信号だけがPHPに送られます。

ここまでは私のコードです。

Preview of the HTML

<!doctype html> 
<html> 
<head> 
    <title>Camera Control</title> 
</head> 
<body> 
<h1 style="text-align: center;">Camera Control</h1> 

<p style="text-align: center;"> 
    <input name="Leftbutton" type="button" value="Left" />&nbsp;&nbsp; 
    <input maxlength="5" name="textbox" size="5" type="text" />&nbsp;&nbsp; 
    <input name="Rightbutton" type="button" value="Right" /> 
</p> 
</body> 
</html> 


<?php 
$myfile = fopen("newfile.txt", "w") or die("Unable to open file!"); 
$txt = " **Some value from the button, text or number** \n"; 
fwrite($myfile, $txt); 
fclose($myfile); 
?> 

私はこの素晴らしいだろう成し遂げることができ、簡単な簡単な方法があるかどうか私の目標は、JavaScriptや言語は、私が知らないことを避けるためです。前もって感謝します。

+1

検索何としてが投稿されています。 – Xorifelse

+0

私には正しいアイデアのように思えます。ありがとうございました! –

答えて

0

以下このコードは、index.phpを次のようになります。

<?php 
    if($_GET['return'] == 'failed'){ 
    echo '<p>unable to execute command.<p>'; 
    } 
?> 

<style> 
    #camera > input{ 
    margin-left 10px; 
    } 
</style> 
<form id="camera" action="camera.php" method="post"> 
    <input type="submit" name="left" value="left"> 
    <input maxlength="5" name="textbox" size="5" type="text" /> 
    <input type="submit" name="right" value="right"> 
</form> 

次に、このようなPHPの何かのために: `phpのフォームhandling`ため

<?php 
    #camera.php 

    if(isset($t = $_POST['textbox']) && isset($l = $_POST['left']) || isset($r = $_POST['right'])){ 
    if(isset($l){ 
     $v = "left"; 
    } elseif(isset($r)) { 
     $v = "right"; 
    } else { 
     header('Location: ./index.php?return="failed"'); 
     die(); 
    } 

    if(!file_put_contents('data.txt', time() . "| $v:$t" . PHP_EOL)){ 
     header('Location: ./index.php?return="failed"'); 
     die(); 
    } 

    header('Location: ./index.php'); 

    // if access to shell 
    exec('python ./location/to/yourscript.py'); 
    } 

?> 
0
<html> 
<head> 
    <title>PHP Test Page 
    </title> 
</head> 


<body> 
<form method="post" action="temp.php"> 
<input type="submit" value="Left" name="leftb"> 
<input type="submit" value="Right" name="rightb"> 
</form> 



</body> 
</html> 




<?php 
$myfile = fopen("newfile.txt", "w") or die("Unable to open file!"); 

if ($_POST['leftb']) 
{ echo "Left is pressed"; 
    $txt = -1;} 


else if ($_POST['rightb']) 
{ echo "Right is pressed"; 
    $txt = 1;} 


fwrite($myfile, $txt); 
fclose($myfile); 



sleep(1); 

$myfile = fopen("newfile.txt", "w") or die("Unable to open file!"); 
$txt = 0; 
fwrite($myfile, $txt); 

fclose($myfile); 

?> 
+0

これは私がそれをうまく動作させる方法です! –

関連する問題