• ベストアンサー

IPアドレス別に表示する画像を変えられますか?

当方の管理するサイト(A)に画像をアップし、 その画像を他のサイト(B)で表示する時に Aに置くPHPファイルでBの訪問者のIPアドレス別に 表示する画像を変えられるのでしょうか。 もし可能でしたら、これからPHPを学習しようと考えており、 当方が必要とする部分が載っている本やサイトがありましたら ご教授願えるとありがたいです。 こちらのOKWaveに行き着くまでに調べた結果、 CGIでは当方がしたいことができるようです。 蛇足かもしれませんがURLを載せておきます。 http://72.14.235.104/search?q=cache:ERkmUmpqInwJ:sakaguch.com/PastBBS/0014/B0007323.html+IP%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E5%88%A5%E3%81%AB%E8%A1%A8%E7%A4%BA%E7%94%BB%E5%83%8F%E3%82%92%E5%A4%89%E3%81%88%E3%82%8B&hl=ja&ct=clnk&cd=1&client=opera どうぞよろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#30334
noname#30334
回答No.2

サイト(B)で画像を表示するタグが 下記のような単純な形式であれば、それ程難しくありません。 <IMG src="http://サイト(A)/○○○.php"> (○○○.phpは、画像を表示するスクリプト) その場合、下記のような感じでいけると思います。 //訪問者のIPで画像を変える********* $reqIP = $_SERVER["REMOTE_ADDR"]; if ($reqIP == "xxx.xxx.xxx.xxx") { $src = "sample1.jpg"; }else{ $src = "sample2.jpg"; } //画像を返す******* header("Content-type: image/jpeg"); header("Content-Disposition: inline; filename=" . $src); header("Content-length: " . filesize($src)); readfile($src); サイト(B)でもスクリプトが走っていて、 fopen等の関数で(A)サーバーから画像を取ってくるような場合は、 ちょっとややこしくなります。

aa0701
質問者

補足

ご回答ありがとうございます。 また具体的なスクリプトを書いてくださり助かりました。 それほど難しくないとのことなので、 見よう見まねでやってみました。 しかしながら、サイトBでは画像が表示されませんでした。 テストに用いたのは、サイトAがxreaで サイトBがジオシティーズです。 サイトBでの画像表示のタグは <IMG src="http://サイト(A)/○○○.php"> を使いました。 せめてサイトAの中だけででも IPアドレスによって画像表示を変えられないかと いろいろ検索し試しましたら この点に関しましてはなんとかできました。 <?php $reqIP = $_SERVER["REMOTE_ADDR"]; if( $reqIP == "IPアドレス"){ echo "<img src=a.jpg>"; } else{ echo "<img src=b.jpg>"; } ?> <?php header("Content-type: image/jpeg"); header("Content-Disposition: inline; filename=" . $src); header("Content-length: " . filesize($src)); readfile($src); ?> 上記のようにしまして、IPアドレスを当方の物にすると a.jpgが表示され、当方以外のものにすると b.jpgが表示されました。 もう少しでサイトBでも画像を表示できそうな気がするのですが なんとか方法はないものでしょうか。 よろしくお願いいたします。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

noname#30334
noname#30334
回答No.3

echo "<img src=a.jpg>"; ではなく $src = "a.jpg"; としてもダメなんでしょうか? そもそも、サイトBに <IMG src="http://サイト(A)/a.jpg"> と書いて、画像が表示されるのが前提ですが。 パスが違ったりしてませんよね?

aa0701
質問者

お礼

ありがとうございます。 おかげさまでできました! 様々な側面からのご指摘 本当にありがとうございました。 不要かもしれませんが、 問題解決に至るまでの過程を記しておきます。 ご指摘いただきましたとおりやっていましたが なぜか上手くいきませんでした。 パスの記入ミスもありませんでした。 そこで色々検索しました結果、 xreaの無料スペースではreadfile()関数の働きが 制限されるとのことでした。 http://sb.xrea.com/archive/index.php/t-10555.html 上記URLにありますとおり、 ディレクトリ「x」を利用することにより 当方の望む結果を得ることができました。 PHPをじっくり学んでからでないと やりたいことができないだろうと思いながらも この場を借り質問してみましてよかったです。 ありがとうございました!

全文を見る
すると、全ての回答が全文表示されます。
回答No.1

> IPアドレス別に表示する画像を変えられますか? 変えられます。比較的簡単なスクリプトです。 接続者のIPアドレスは、$_SERVER['REMOTE_ADDR']で取得出来ますので、それに合わせて変えれば良いかと思います。 イメージの出力は、例えば下記のようなimg.phpを作成し <?php header('Content-type: image/jpeg'); if($_SERVER['REMOTE_HOST'] == "192.168.0.10"){ $fname = "192.168.0.10の時に表示するファイル名"; }else{ $fname = "192.168.0.10以外の時に表示するファイル名"; } readfile($fname); ?> として、画像表示には <img src="http://......../img.php" /> とすれば訪問者のIPアドレス別に表示する画像を変える事が出来ます。 (スクリプトは未検証です) 参考まで。

aa0701
質問者

お礼

ご回答ありがとうございました。 最初、当方の認識不足のため望む結果を得られませんでしたが、 いろいろ調べた結果ご教授いただいたことで問題解決できました。 的確かつ具体的なアドバイスありがとうございました!

aa0701
質問者

補足

ご回答ありがとうございます。 また具体的なスクリプトを書いてくださり助かりました。 比較的簡単にできるとのことなので、 見よう見まねでやってみました。 しかしながら、サイトBでは画像が表示されませんでした。 テストに用いたのは、サイトAがxreaで サイトBがジオシティーズです。 サイトBでの画像表示のタグは <img src="​http://......../img.php"​ /> を使いました。 せめてサイトAの中だけででも IPアドレスによって画像表示を変えられないかと いろいろ検索し試しましたら この点に関しましてはなんとかできました。 <?php $reqIP = $_SERVER["REMOTE_ADDR"]; if( $reqIP == "IPアドレス"){ echo "<img src=a.jpg>"; } else{ echo "<img src=b.jpg>"; } ?> <?php header("Content-type: image/jpeg"); header("Content-Disposition: inline; filename=" . $src); header("Content-length: " . filesize($src)); readfile($src); ?> 上記のようにしまして、IPアドレスを当方の物にすると a.jpgが表示され、当方以外のものにすると b.jpgが表示されました。 もう少しでサイトBでも画像を表示できそうな気がするのですが なんとか方法はないものでしょうか。 よろしくお願いいたします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 画像を文字に変換するソフト

    画像の1pxに対して、1つの文字を当てて、以下のようなテキストを作るソフトがあったら、教えてください。 以前、もじ絵というソフトを使ったことがありますが、いつの間にか作者のサイトが閉鎖されていて、ダウンロードできません。 http://sakaguch.com/PastBBS/0011/B0005739.html#No5739

  • ipアドレスについて教えてください!

    http://sakaguch.com/PastBBS/0007/B0003998.html#No3998 この記事を見て疑問に思ったのですが 私のパソコンでコマンドプロンプトでipconfigと入力すると IP Address... :192.168.1.11 Subnet Mask.. :255.255.255.0 Default Gateway :192.168.1.1 と表示されます。 先ほどの記事とまったく同じIPアドレスだなと疑問に思いました。 ルーターを使う前はIPアドレスが接続するたびに変わっていたのですが ルーターを使い始めたらパソコンを切っても再接続してもIPアドレスが変わりません。 でも掲示板に書き込むときに自分の識別番号としてIPアドレスから生成される英数字の配列は変わるんですよね・・。 見る限りIPアドレスは変わっていないように思うのに なぜ掲示板の英数字は変わるのでしょうか? またなぜコマンドプロンプトで確認する私のIPアドレスはいつも同じなのでしょうか。 IPアドレスの最初の3桁は国を表し、最後の3桁は端末を表していると聞いたことがあります(違うかもしれませんが・・) IPアドレスは個人を識別するための番号なのに真ん中の6桁だけじゃ識別しきれないんじゃないか・・。 そんな疑問ももちました。なんだかとてもトンチンカンなことを言っていたらごめんなさい、 お詳しい方には基本的な質問なのでしょうから、失礼ながら教えていただける方がいらっしゃいましたら 教えてください、お願いします><

  • jqueryの画像ギャラリープラグインのエラー

    とても困っているのでどなたか教えていただけると嬉しいです。 jqueryの「Smooth Div Scroll」(http://www.smoothdivscroll.com/#quickdemo)を設置したのですが、 OperaとIE7で表示した時にスクロールさせると、 画像領域を超えても延々とスクロールが続いてしまって何も表示されなくなってしまいます。 他のブラウザでは画像領域のみのスクロールが成功します。 公式が英語でしたので、 以下のサイトのものをそのまま使用させていただいています。 http://w-cc.info/internet/javascript/%E6%A8%AA%E3%81%AB%E4%B8%A6%E3%81%B9%E3%81%9F%E7%94%BB%E5%83%8F%E3%82%92%E3%83%9E%E3%82%A6%E3%82%B9%E6%93%8D%E4%BD%9Cor%E8%87%AA%E5%8B%95%E3%81%A7%E3%82%B9%E3%82%AF%E3%83%AD%E3%83%BC%E3%83%AB%E3%81%97.html ちなみに公式のdemoをOpera/IE7で確認したところそのようなバグは起きませんでした。 なので上記サイトのコードに何か間違いがあるのかなと思ってはいるのですが…。 宜しくお願いいたします…!

  • 【IPアドレスの競合が検出されました】 対処方法

    ネットワークエラー IPアドレスの競合が検出されました このネットワーク上の別のコンピューターが、このコンピューターと同じ IP アドレスを使 用しています。ネットワーク管理者に問い合わせてこの問題を解決してください。詳細につ いては、Windows システム イベント ログを参照してください。 っと、エラー報告がありました! どう対処すればよいのでしょうか? OSは、Microsoft Windows7です。 どなたか詳しく教えてください。 http://www.google.co.jp/webhp?hl=ja&tab=ww#hl=ja&gs_rn=15&gs_ri=psy-ab&suggest=p&cp=22&gs_id=8t&xhr=t&q=IP%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%81%AE%E7%AB%B6%E5%90%88%E3%81%8C%E6%A4%9C%E5%87%BA%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%80%E5%AF%BE%E5%87%A6%E6%96%B9%E6%B3%95&es_nrs=true&pf=p&output=search&sclient=psy-ab&oq=IP%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E3%81%AE%E7%AB%B6%E5%90%88%E3%81%8C%E6%A4%9C%E5%87%BA%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%80%E5%AF%BE%E5%87%A6%E6%96%B9%E6%B3%95&gs_l=&pbx=1&bav=on.2,or.r_qf.&bvm=bv.47244034,d.dGI&fp=6f7a6a644c37be1c&biw=944&bih=848 投稿日時 - 2013-05-31 07:38:16

  • スカイプ という無料IP電話があるようです

    スカイプ という無料IP電話があるようですが使い勝手はいかがでしょうか。 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&oe=UTF-8&q=%E3%82%B9%E3%82%AB%E3%82%A4%E3%83%97 各方面で話題になっているようです。

  • 画像検索とIPアドレス

    ネットで画像検索をするとたくさんの画像が出てきますよね? そして、それとは別にwebサイトにアクセスすると その端末のIPアドレスがわかると聞きました。 そこで質問なのですが、 ・画像検索で画像を検索すると 表示された画像元のサイト全てに端末のIPアドレスや位置情報を把握されますか? ・また、余談ですがキーワード検索でサイト一覧が表示されただけでも、その表示されたサイトにIPアドレスや端末の位置情報は把握されますか。

  • IPアドレスについて 

    IPアドレスが、 A 2008.07.26 17:49:07 IP xxx.111.xxx.222 B 2008.07.26 16:59:12 IP xxx.22.xxx.333 とします。 そして、 A 2008.08.01 13:09:39 IP xxx.111.xxx.222 B 2008.08.02 15:31:04 IP xxx.22.xxx.333 A 2008.08.15 01:20:18 IP xxx.111.xxx.222 B 2008.08.16 00:09:04 IP xxx.22.xxx.333 A 2008.08.25 23:32:46 IP xxx.111.xxx.222 B 2008.08.26 21:57:22 IP xxx.22.xxx.333 A 2008.09.18 23:20:58 IP xxx.111.xxx.222 B 2008.09.18 22:31:07 IP xxx.22.xxx.333 という結果を得られた場合、 このAという人物とBという人物は同一人物と考えてもいいのでしょうか。 当方、IP等こういうことに疎いですので、 何卒ご教授いただければ幸いです。 何卒ご回答の程、宜しくお願いいたします。

  • 下記のサイトのように似たようなページを量産するには

    下記のサイトのように、似たようなページを量産するにはどうしたらいいでしょうか?ホームズのサイトでも同じようなサイト構造になっていると思います。PHPという言語を勉強しないとダメですか? http://www.cetkarnataka.in/ http://www.cetkarnataka.in/sitemap/ http://www.cetkarnataka.in/%E7%9C%8B%E8%AD%B7%E5%B8%AB%E3%83%8F%E3%83%AD%E3%83%BC%E3%83%AF%E3%83%BC%E3%82%AF%E5%8B%9F%E9%9B%86%E6%8E%A1%E7%94%A8%E6%B1%82%E4%BA%BA/%E6%9D%B1%E4%BA%AC%E9%83%BD/

  • カラメル色の4種添加物について教えて!

    下記サイトでカラメル色の3、4が発がん性を疑わせています。 http://www.msn.com/ja-jp/news/opinion/%e3%82%b3%e3%83%bc%e3%83%a9%e3%82%84%e3%83%8e%e3%83%b3%e3%82%a2%e3%83%ab%e3%82%b3%e3%83%bc%e3%83%ab%e3%83%93%e3%83%bc%e3%83%ab%e3%80%81%e3%82%b9%e3%83%bc%e3%83%91%e3%83%bc%e3%81%ae%e6%83%a3%e8%8f%9c%e3%81%af%e8%a6%81%e6%b3%a8%e6%84%8f%ef%bc%81%e7%99%ba%e3%81%8c%e3%82%93%e6%80%a7%e7%89%a9%e8%b3%aa%e3%82%92%e5%90%ab%e3%82%80%e3%82%ab%e3%83%a9%e3%83%a1%e3%83%ab%e8%89%b2%e7%b4%a0%e3%81%8c%e9%87%8e%e6%94%be%e3%81%97%ef%bc%81%e3%82%ab%e3%83%83%e3%83%97%e9%ba%ba%e3%82%82/ar-BBsP1hD 質問1 カラメル色1~4って基本的には甘みと色を作るものかと思いますが、記載さえている表示だけでは何番か解らないってことでしょうか。 質問2 カラメル色3、4ってどいう食品に使われことが多いか判断できるのでしょうか。 以上、宜しくお願い致します。

  • IPアドレスについて

    ● IPアドレス(192.168.2.100)を設定したパソコンと同じネットワーク内にルータがあるものとして、サブネットマスクとデフォルトゲートウェイが正しく設定されているものを、A~Eの中から選びなさい。  IPアドレス -- サブネットマスク -- デフォルトゲートウェイ A. 192.168.2.100 -- 255.255.255.240 -- 192.168.2.10 B. 192.168.2.100 -- 255.255.255.0 -- 192.168.3.1 C. 192.168.2.100 -- 255.255.255.192 -- 192.168.2.21 D. 192.168.2.100 -- 255.255.254.0 -- 192.168.4.1 E. 192.168.2.100 -- 255.255.255.248 -- 192.168.2.97 答えは E なのですがなぜなのかわかりません? どなたかわかり易く解説していただけないでしょうか。 宜しくお願いします。