- ベストアンサー
どの画像がクリックされたかファイル名で取得したい
タイトルの通りなんですが PHPで.jpg画像をクリックしたときに どの画像がクリックされたかを引数のファイル名で取得する事は可能でしょうか? ・引数 クリックされたら他のページにジャンプしたいので ジャンプ先のページでどの画像がクリックされたかを引数で渡し、知りたいと思っています。 こういったのは javaスクリプトになってしまうのでしょうか?
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
>『ID=60』を飛び先.phpに >引数として渡したいと 直接数値を指定してよいならじかに数値を代入すれば いいでしょう。 ただ「id」という名前はオブジェクトとして定義 されてるのであまりよくないかもしれません。 (まぁいちおう動いてますけど) <img onClick="obj=document.f1;obj.id.value='60';f1.submit()" name="hoge.jpg"> <form name="f1" action="飛び先.php" method="get"> <input type="hidden" name="id" value=""> </form>
その他の回答 (5)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
>これは消すことは出来るのでしょうか? #1のやり方では消せません。 #4の様にフォームで、method=POSTを使えば表示しません
- yambejp
- ベストアンサー率51% (3827/7415)
結局、form(直リン含む)かクッキーでしか PHPには値を渡せないので、javascriptが 前提でしょうね。 とりあえずこんなんで簡単に渡すことはできますけど <img onClick="obj=document.f1;obj.img.value=this.name;obj.submit();" name="hoge.jpg"> <form name="f1" action="飛び先.php" method="get"> <input type="hidden" name="img" value=""> </form>
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
>サムネイル毎に元画像を表示する.phpファイルが必要になってしまうので よくわかりませんが、クリックされた画像名(DBのキーになればファイル名でなくてもいい)を?以降で渡しているので、表示するPHPで取得し表示すればいいので、表示するPHPは1つでいいと思います。
お礼
申し訳ありませんでした。 BLUEPIXYさまの仰るとおり 私の思うことが出来ました。 ひとつ判らないのですが jump.phpにIDを送ったのですが アドレスの所にそのIDが表示されてしまいます。 下記の様な感じで。 http://~~~/jump.php?ID=001 これは消すことは出来るのでしょうか?
- tecinfo
- ベストアンサー率52% (32/61)
>>BLUEPIXYさんの続きで。 jump.php内で <?php //カウンター機能 ~~ 省略 ~~ //画像表示 include(IMAGE_PATH.$_GET['image']); ?> のようにパラメータによって読み込む画像を変えてやれば、画像と同じ数のPHPファイルを用意する必要なくて、jump.php一つで済むんじゃないかな。 あ、自分は画像は詳しくないので・・・表示にはincludeじゃなくて画像用の関数を使ったほうがいいかも。
お礼
レス有難うございます。 tecinfoさまの補足がなければ 自分では解決に至らなかったと思います。 jump.php一つで済みました。。 PHPには画像用の関数なんてものがあるのでしょうか?
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
javascriptになるような気がしますが 単純に画像のリンク先に <a href="jump.php?image=ImageFile.jpg"><img src="ImageFile.jpg"></a> みたいな感じでいいんじゃないでしょうか
補足
クリックする画像は何十枚ものサムネイルになります。moto.phpに表示してあるとします。 そのクリックしたサムネイルのファイル名からDBにクエリを要求し元画像のURLを取得します。 jump.phpでDBから取得したURLを元に画像を表示したいと思っています。 取得したURLを表示するファイルはjump.phpのみとしたいと思っています。 BLUEPIXYさんが提案してくださった方法ですと サムネイル毎に元画像を表示する.phpファイルが必要になってしまうので纏めるのが大変になってしまうのです。
補足
レスありがとうございます。 この場合 飛び先.phpでIDを取得したい場合は どこに値を代入すれば良いのでしょうか? 『ID=60』を飛び先.phpに 引数として渡したいと思っています。