私は初心者/趣味のプログラマーです。私はオンラインで見つけたコードをまとめてgpioピンを持っているウェブカメラアプリケーションに取り組んでいます。私は私のLANまたは外部からページにアクセスするかどうかによって変更する必要があるindex.phpファイルにimg srcタグがあります。外部IPからのクライアントの場合はimg srcタグを変更
LANに接続しているかどうかによって、img srcタグを内部または外部のIPに手動で変更すると動作する別のフォーラムで、次の情報が見つかりました。 index.phpファイルを手動で変更する必要はありません。
オプションラズベリーパイフォーラムで見つけたもの: 外部IPを使用するようにタグを変更します。これにより内部ネットワークが切断された場合は、内部対外部の別のページを使用するか、HTTPクライアントが内部または外部IPから来ているかどうかを判断するためのスクリプトを作成し、それに応じてタグを変更することができます。
クライアントが外部ネットワークまたは内部ネットワークにあるかどうかによってimg srcタグを変更する代替インデックスページまたはスクリプトを実装する方法を教えてもらえますか?ここで
は、IMGのsrcタグとインデックス・ページのコードです:<!DOCTYPE html>
!--TheFreeElectron 2015, http://www.instructables.com/member/TheFreeElectron/ -->
<html>
<head>
<meta charset="utf-8" />
<title>Raspberry Pi Gpio</title>
</head>
<body style="background-color: black;">
<center>
<img src="http://192.168.0.34:8080/stream/video.mjpeg">
</center>
<!-- On/Off button's picture -->
<?php
$val_array = array(0,0,0,0,0,0,0,0);
//this php script generate the first page in function of the file
for ($i= 0; $i<8; $i++) {
//set the pin's mode to output and read them
system("gpio mode ".$i." out");
exec ("gpio read ".$i, $val_array[$i], $return);
}
//for loop to read the value
$i =0;
for ($i = 0; $i < 8; $i++) {
//if off
if ($val_array[$i][0] == 0) {
echo ("<img id='button_".$i."' src='data/img/red/red_".$i.".jpg' onclick='change_pin (".$i.");'/>");
}
//if on
if ($val_array[$i][0] == 1) {
echo ("<img id='button_".$i."' src='data/img/green/green_".$i.".jpg' onclick='change_pin (".$i.");'/>");
}
}
?>
<!-- javascript -->
<script src="script.js"></script>
</body>
</html>
おかげ
だけSRCにホスト名が含まれていません: '' –
は、特異静的IP内部IPです、またはそれは異なるIPの範囲ですか? –
JSを使用して画像を「ホットロード」する必要があるかもしれません。正規表現テストから画像のsrcを構築する場合は、 ''(window.location.test(/192\.168 \ ./){/ *はローカル* /} else {/ *は外部* /} 'のようにしてください。 – haxxxton