PHPで画像のマウスクリック位置を取得することは可能でしょうか?
質問
要するにタイトル通りなんですが…
クリックされたときに、たとえば script.php を呼び出し、その PHP スクリプト ファイルでマウスがクリックされた画像の座標を取得する画像が必要です。
これは可能でしょうか?
編集:
いくつかの回答の後、問題を正しく説明していないことに気づきました...問題は、私には HTML を完全に制御できないということです。画像と画像リンクに対して私が持っているコントロールは、BBCode が提供するコントロールです。
基本的に私がやりたいことは、Web サイト上のさまざまなセクションへのリンクを含むフォーラムの署名を作成することです。複数の画像を使用できると主張する人もいるかもしれませんが、ほとんどのフォーラムでは署名に入力できる量が制限されており、複数の画像には十分ではありません。
したがって、次のようなことしかできません。
[url=http://www.mydomain.com/script.php]
[img]http://www.mydomain.com/signature.jpg[/img]
[/url]
これは次のようになります。
<a href="http://www.mydomain.com/script.php">
<img src="http://www.mydomain.com/signature.jpg" />
</a>
解決
それができない場合:
- JavaScript を使用するか、
- input type="image" を使用するか、
- img タグに属性を追加します (イメージ マップの作成などを行うため)。
そうなると、いいえ、あなたが説明したことを実行することはできなくなります。
他のヒント
ボタンのように機能する input type="image" を使用すると、マウス クリックの x 座標と y 座標が送信されます (フォームも送信されます)。
詳細はこちら: http://www.htmlhelp.com/reference/html40/forms/input.html#image
私はそれを使用してから長い時間でしたが、「ボールはどこですか?」のために機能させました。何年も前にサイトでの競争。
アップデート:
やりたいことをするには環境が狭すぎるように思えます。フォーラムがイメージマップを作成させてくれれば、それはうまくいくでしょうが、フォーラムがあなたにさせてくれるとは思えません。他に思いつくのは Flash か JavaScript だけですが、同様にそれらも許可されない可能性があります。これを機能させるには、画像やアンカーよりももう少し賢いものが必要です。
画像入力を設定している場合 name="foo"
, 、 それから $\_POST['foo\_x']
そして $\_POST['foo\_y']
画像の座標に設定されます。
使ってみてはいかがでしょうかW3C イメージ マップ
画像マップを使用すると、著者は画像またはオブジェクトの領域を指定し、各領域に特定のアクションを割り当てることができます(例:ドキュメントの取得、プログラムの実行など)ユーザーによって領域がアクティブ化されると、アクションが実行されます。
しかし、BBCode のフォーラムでは、あなたが求めているものを手に入れることができるとは本当に思いません。
bbcode で URL にインライン イベント ハンドラーを追加できない限り、これは不可能です。
BBCode 用ではありませんが、別の解決策は、img の ismap 属性を使用することです。ただし、正確な座標を必要とする人にとっては価値があるかもしれません。例:
<a href="link.html"><img src="shapes.jpg" alt="Shapes" ismap="ismap"/></a>
x 座標と y 座標は GET パラメータとして link.html に渡されます。
「onclick」を実行して「script.php」にリクエストを送信するときに、ajaxリクエストを使用できます。それ以外の場合は、サーバーサイド言語である php について勉強します。