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

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

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

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

HTML

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

Q&A

解決済

2回答

2459閲覧

ドロップダウンメニューの作り方

aba623ky

総合スコア63

PHP

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

HTML

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

0グッド

0クリップ

投稿2016/09/15 01:55

編集2016/09/15 02:38

前回の質問を再投稿させていただきます。
前回、htmlのtableでドロップダウンメニューを作る方法について質問をしました。
たくさんのサイトを調べると、ulを使ってドロップダウンメニューを作る方法を載せたサイトはありますが、tableを使ったドロップダウンメニューを作る方法を載せたサイトがありませんでした。
しかし、あるユーザーのおかけでtableを使ったドロップダウンメニューを作る方法がわかりました。
今回は応用したドロップダウンメニューを作ろうと思います。
今回はapiで取得した全データ(10件のデータ)のtableをドロップダウンメニューにしようとしましたが、最初の1件のtableのデータしかドロップダウンメニューが適用されませんでした。
10件のtableのデータがドロップダウンメニューを適用させることは可能ですか?
checkboxの下をドロップダウンメニューにしたいです。
一件のデータしかドロップダウンメニューになりませんでした。

css

1<style> 2.on-off{display:none;} 3input[type="checkbox"].on-off + table>tbody{display:none;} 4input[type="checkbox"].on-off:checked + table>tbody{display:table;} 5</style> 6

php

1echo '<table border="1">'; 2 echo '<caption>'; 3 echo '基本情報'; 4 echo '</caption>'; 5echo '<tr>'; 6 echo '<th></th><td>'; 7 echo '<input type="checkbox" id="Panel1" class="on-off">'; 8 echo '<table class="menu" width=100>'; 9 echo '<caption class="class">'; 10 echo '<label for="Panel1">'; 11 echo $r->name; 12 echo '</label>'; 13 echo '</caption>'; 14 echo '</td>'; 15echo '</tr>'; 16 echo '<tbody>'; 17 echo '<tr>'; 18 echo '<th>'; 19 echo 'アクセス'; 20 echo '</th>'; 21 echo '<td>'; 22 echo $r->access->station; 23 echo '</td>'; 24 echo '</tr>'; 25 echo '<tr>'; 26 echo '<th>'; 27 echo '電話'; 28 echo '</th>'; 29 echo '<td>'; 30 echo $r->tel; 31 echo '</td>'; 32 echo '</tr>'; 33 echo '</tbody>'; 34 echo '</table>'; 35echo '</body>'; 36 echo '</table>';

html

1<table border="1"> 2<td> 3 <input type="checkbox" id="Panel1" class="on-off"> 4 <table class="menu" width=100> 5 <caption class="class"> 6 <label for="Panel1"> 7 $r->name 8 </label> 9 </caption> 10 </td> 11 <tbody> 12 <tr> 13 <th> 14 アクセス 15 </th> 16 <td> 17 $r->access->station 18 </td> 19 </tr> 20 <tr> 21 <th> 22 電話 23 </th> 24 <td> 25 $r->tel 26 </td> 27 </tr> 28 </tbody> 29 </table> 30 </body> 31 </table>

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

全部echoするのは無駄で手間で間違いに気づかない

php

1<?php 2$name="名前"; 3$access="東京都"; 4$tel="03-XXXX-XXXX"; 5 6echo <<<EOF 7<html> 8 <head> 9 </head> 10 <body> 11 <table border="1"> 12 <caption> 13 基本情報 14 </caption> 15 <tr> 16 <th></th> 17 <td> 18 <input type="checkbox" id="Panel1" class="on-off"> 19 <table class="menu" width=100> 20 <caption class="class"> 21 <label for="Panel1"> 22 $name; 23 </label> 24 </caption> 25 </td> 26 </tr> 27 <tbody> 28 <tr> 29 <th> 30 アクセス 31 </th> 32 <td> 33 $access; 34 </td> 35 </tr> 36 <tr> 37 <th> 38 電話 39 </th> 40 <td> 41 $tel; 42 </td> 43 </tr> 44 </tbody> 45 </table> 46 </table> 47 </body> 48 </html> 49EOF; 50?> 51

投稿2016/09/15 02:47

date

総合スコア1820

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aba623ky

2016/09/15 02:55

ドロップダウンメニューにしたいのですが・・・
guest

0

ベストアンサー

前回の質問とどこが違うのでしょうか?
(前回はcaptionをメニューとしましたが、今回は違うのでしょうか?)
例示テーブルが1つしか見当たらないので複数だとどういうデータになるのかわからないのと、
apiの仕様もわからないのでもう少し簡便な例示で必要十分なサンプル提示が必要です。
(tbodyタグが唐突に途中にはいっているのもよくわかりません)
また明らかにPHPの部分が無駄なのでスタティックなHTMLで質問することは可能でしょうか?

投稿2016/09/15 02:29

yambejp

総合スコア114829

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aba623ky

2016/09/15 02:32

前回の質問と違うのは、apiで取得したデータなので複数のcheckboxを手書きで書くことができないところです。
yambejp

2016/09/15 02:40

たしか前回の質問の意図は「javascriptを使わないで」ということでしたよね? であれば命題の実現は不可能です。 (1)なんらかの処理でテーブルの前にcheckboxを埋め込み、labelと連携する (2)javascriptで処理する のいずれかを選択する必要があります
aba623ky

2016/09/15 02:45

では、話が逸れますが、店名をクリックしたら詳細を表すことは可能ですか? 例えば、カレー屋さんをクリックしたらその店の詳細を表すコードを作ることは可能ですか?
yambejp

2016/09/15 02:56

>店名をクリックしたら詳細を表す 理論的には可能ですね しかし、それもcheckboxの構造ができているか、javascriptを使うかのどちらかの条件が必要だと思います。 普通はjavascriptでクリックされた際に詳細データをサーバーに取りに行って表示します
aba623ky

2016/09/15 03:00

phpにjavascriptの要素を入れるのは可能ですか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問