質問: XAMPPv5.6.15を導入してPHPの練習をしています。 ローカルネットワーク上に接続されている他のPCの情報を自動で取得し、DBに格納、DBに格納されている情報をページに表示させ閲覧・編集・削除といった事がしたいです。PHPで下記2点について教えてください。 ・同ネットワーク上に接続されているPCから情報を取得する方法 ・取得出来る情報にはなにがあるか また、メーカー名や型番といった情報はWin32APIを使える言語でないと取得出来ないと聞きました。 後々Win32APIを使える言語で同ネットワーク内PCのメーカー名・型番といった情報を取得しファイルに吐き出すプログラムも作り、PHPで読み込んで一緒に表示させたいと思っていますので、もしアドバイス・指摘なんかがあれば言って頂けると非常に助かります。 他に環境や目的などで知りたい事があれば聞いてください。 以上、よろしくお願いいたします。 >>管理者権限 そのネットワーク内で使用しているという事は使用者も同意の上という事ではありますが、その新規PCで何か許可をするような作業が手動で必要となると自動化の意味があまり無くなってしまいます・・・。もし、法律や常識、使用者的に問題が無いのであれば手段は問わない前提でお願いします。
回答: > > ・IEでActiveXスクリプトにアクセスする > > 上記の通りActiveXを少しネットで調べた程度にしか知らないのですが、IE又はFireFoxでしか動作しないという事が書いてありました、その場合「サーバをルータと連携させて」自動化した時にブラウザの指定は出来るのか、対象ブラウザが入っていない場合はどうなってしまうのかという疑問があります。 > > > そうですね。色々と制限は出てくるので「PC情報の保存が出来なかったらネットワークを利用出来なくする」様な制約をつけることで利用者にIEを使わせる(使わないと利用者が不便になる)くらいしかないと思います。 > > ・サーバをルータと連携させる > > とはつまりXAMPPでいう所のApacheの設定とルーターの設定を変更する、ということでしょうか。それともコード上で実現するのでしょうか。 > > > apacheの設定とルータの設定をしてかつそれをコードで連動させる。という感じです。 自前で全部作るのはかなり厳しいですが、ソフトウェアルータ用のOSやソフトウェアがあるのですごい頑張れば不可能ではないと思います。 > > ・Linuxだったら > > この質問は大前提が変わってしまうのでこれだけ詳しく回答して貰った上で聞くのは失礼だと思ったのですが・・・そもそもこの話は「PHPの練習」として課題で出された物で推定期間1週間とされています。課題内容を誤解していないとしたら環境によって大きく難易度が下がったりするでしょうか、PHPはLinux上で使う事が多いそうですが・・・。Linuxについては既に環境設定がされている上で「PHPの結果がページに表示されたね」「コマンドでファイルのコピーや削除ができたね」程度の事をしただけで殆どLinuxだから出来る事を知りませんがLinux上での開発は可能です。 > > > linuxでも基本的には同じです。 他のPCへのアクセス方法をどうにかして確保する必要があります。 「PHPの初学者を対象とした課題であること」 「期間が一週間と短いこと」 を考えると、何か重要な前提や課題に大きな誤解がある可能性が高いと思います。 一度出題者に「現在の課題の理解」を伝えてそれが出題とずれていないか確認するのが最重要だと思いますよ。