質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.49%

  • PHP

    20781questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • HTML

    9251questions

    HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

phpを使って、クリックした画像のキーを取得するようにしたいです。

解決済

回答 3

投稿

  • 評価
  • クリップ 0
  • VIEW 200

taishi_idea

score 15

サイトの画面に画像がたくさんあって、そのどれかをクリックすると、クリックした画像のキーを取得して、違うページにとんで、取得した画像を表示させたいのですが、取得方法がわかりません。

下のコードのように$images配列に$idキー$img値として画像を格納しています。

foreach($images as $id => $img){
  echo '<a href=""><img src="./album/' . $img . '"></a>';
}


GETを使うのかと思ったのですが、「クリックした」もののgetの方法が調べてもわからなかったので質問させていただきました。

分かる方いらっしゃいますでしょうか?

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • mts10806

    2017/09/07 14:40

    画面遷移を伴うかどうかで回答も違ってきます。hrefに何も入れないとブラウザより挙動が違ってくるのでオススメできません。

    キャンセル

回答 3

checkベストアンサー

+1

hrefパラメーターにIDを追加し、受け取り側は$_GET['id']を参照するようにします。

foreach($images as $id => $img){
  echo '<a href="~?id=' . $id . '"><img src="./album/' . $img . '"></a>';
}

受け取り側
echo $_GET['id'];

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

+1

クリックした画像のキーを取得して、違うページにとんで、取得した画像を表示させたい

直接画像のURLを別ウィンドウで開くとかではダメなんでしょうか。

foreach($images as $id => $img){
  echo '<a href="./album/' . $img . '" target="_blank"><img src="./album/' . $img . '"></a>';
}


jQueryプラグインでポップアップのように開くとか(lightboxみたいなもの)

画像情報がDBにあり(IDと画像パスなど)、一覧画面→詳細画面のようにしたいのであればttyp03さんのやり方ですね。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

例示のものにはクリックした画像のキー($id)がhtmlソースに
埋め込まれていませんので、クライアント側でなにをやっても無駄です。
たとえばimgのdata-idに$idを埋め込んで、クリック時に参照すると
よろしいかと思います

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

関連した質問

  • 解決済

    DBに保存した画像を連続して表示したい。

    PHPを勉強している者です。 行いたいこと  DBに保存している画像を連続して表示させたいのですが、 一枚しか表示されず、困っています。 うまく表示するにはどのように行

  • 解決済

    valueに3以外の変数が入らない

    formで<input type="hidden" name="jump" value="' . $page . '">としているのですが、$pageの値がjumpに入ったり入らな

  • 解決済

    phpで@2x付きの名前(画像)があったらsrcsetを追加する方法

    image/ --- hoge1.jpg --- hoge2.jpg --- hoge3.jpg --- hoge3@2x.jp 画像名に「@2x」がついた同名の画像

  • 解決済

    タブ画像の切り替え

    プログラム初心者です。 PHPでタブと$_REQUESTを使ったシステムを作成しています。 ですが、うまく表示されません。 イメージはこんな感じです。 ページとしては、

  • 解決済

    phpで月ごとに画像の切り替えを行いたい

    非常に初歩的な質問で恐縮ですが、タイトルには月ごとと書きましたが、とりあえず11月用の画像を表示して11月が終わったら12月用の画像を表示したいと思っております。 実際に書い

  • 解決済

    php 画像

    htmlの中にphpを使って同一サーバーの中に保存してある画像(拡張子は何でも良い)を表示したい。以下に様にしてみましたが分かりませんでした。 <html> <head> <

  • 解決済

    変数へ文字列を入れたい

    お世話になっております。 下記ソースは、PHPとjavascriptを用いた無料で配布されているコードの一部です。 //*** 配布されたソースコードの一部 ***

  • 解決済

    WP カスタムフィールド ループ内での画像表示枚数指定

    カスタムフィールドの画像オブジェクトから取得し表示されたのですが、ループしているため全て表示されてしまいました。 4枚の画像を表示するにはどうしたらいいですか?

同じタグがついた質問を見る

  • PHP

    20781questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • HTML

    9251questions

    HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。