• 締切済み

データベースの中身をテーブルで表示したいです

mysqlデーターベースの中身をテーブルで表示したいのですがわからない事があるので書き込みしました。 テーブルAのデーターを <TABLE> <TR><TD>mysql1行目</TD><TD>mysql2行目</TD></TR> <TR><TD>mysql2行目</TD><TD>mysql4行目</TD></TR> </TABLE> <TD></TD>の間にレコード一つ分のデータを入れて2列で表示したいです。 whileを使ってデーターを取り出すと1行にレコード一つ分のデーターを表示するのはそのままできるんですが1行にレコード二つ分のデーターを出す場合<TR>と</TR>をどういう仕組みで表示させれば良いかわかりません。 誰か教えてもらえないでしょうか?

  • jtam
  • お礼率92% (13/14)
  • PHP
  • 回答数1
  • ありがとう数0

みんなの回答

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.1

カウンタを用意して1レコード毎に++しましょう。 カウンタが奇数時と偶数時で処理を分けます。 ・偶数時<TR><TD>mysql1行目</TD> ・奇数時<TD>mysql2行目</TD></TR> 頭に<TABLE>、最後に</TABLE>をつけて出来上がり。 ただし、これだけではレコード数が奇数のとき問題があるので、それは宿題と言う事で。

関連するQ&A

  • テーブル<TR></TR>の処理について

    次の様な処理を行いたいのですが方法をご教授下さい。 DBのテーブルに10個のレコードがあります。 すべてのレコードの情報を表示させます。 HTMLのテーブルは2列5行で表示させたい。 つまりHTMLで下記のように表示したい。 <TABLE> <TR> <TD>データ1</TD> <TD>データ2</TD> <TD>データ3</TD> <TD>データ4</TD> <TD>データ5</TD> </TR> <TR> <TD>データ6</TD> <TD>データ7</TD> <TD>データ8</TD> <TD>データ9</TD> <TD>データ10</TD> </TR> </TABLE> これをPHPで <? $con = mysql_connect("$dbhost", "$dbuser", "$dbpass"); mysql_select_db("$dbname"); $sql= "select * from DB_name"; $rs=mysql_query($sql); ?> <TABLE> <TR> <? while($row=mysql_fetch_array($rs)){ ?> <td><? echo $row['data'] ?></td> <?}?> </tr> </table> のように単純にデータを取り出すことは出来るのですが、 データを5つ毎に</TR><TR>を出す方法が分かりません。 このような処理は皆様はどのように行っていますか。 基本的な質問で申し訳ありませんが、ご教授下さい。 よろしくお願い致します。

    • ベストアンサー
    • PHP
  • PHP+MYSQLで3×5のテーブル表示について

    こんにちは。 PHP+MYSQLでページング処理で画像を出力の勉強をしています。 さっそく質問です。PHP+MYSQLを使って 元テーブルがID番号、名前、性別だとして、 1名分の表示は上記フィールドのデータを縦に3行作った後、 横の列に移るという作業をして、結果縦横に3×5並べる にはどう書けば良いいでしょうか? プログラムのイメージは以下になります。 めくっていく頁のはじめの行($i=$startline)から表示する時、 表示を1列×3行のまとまり□を縦横に3×5出力する場合、 mysqlに接続した後、 $rs = mysql_db_query($db,$sql); while($row=mysql_fetch_array($rs) ){ print("<table><tr>"); print("<td>"); print("<td>"); for($i=0;$i<4;$i++){ print("<tr>"); print("<td>"); print($row[$i]); print("</tr>"); print("</td>"); print("</td>"); } print("</td>"); print("</tr></table>"); こういう形の後、ページングの$pageのurlを作って、$_get[]に 飛ばすというイメージです。 よろしくお願いします。 以上

    • 締切済み
    • PHP
  • DHTMLでテーブルの行の表示・非表示を切り替える。

    こんにちは。 WEBアプリケーションのモックアップを作成しています。 自身はJava屋ですが、DHTMLに明るくないため、苦戦しています。 同一画面内のリンクがクリックされた場合に・・・ テーブルの行の表示、非表示を切り替えたいのです。 <!-- ========================= --> <!-- テーブル1 --> <table border="1"> <tr> <td>ヘッダ1</td> <td>ヘッダ2</td> </tr> <!-- ☆☆☆ ここから ☆☆☆ --> <tr> <td>111</td> <td>aaa</td> </tr> <tr> <td>222</td> <td>bbb</td> </tr> <!-- ☆☆☆ ここまで消したい ☆☆☆ --> </table> <!-- テーブル2 --> <table border="1"> <tr> <td>ヘッダA</td> <td>ヘッダB</td> </tr> <tr> <td>あああ</td> <td>いいい</td> </tr> </table> <!-- ========================= --> <tr>タグを<div>タグで囲んで、styleでhidden、visibleを切り替えようと考えましたが、<tr>に<div>タグが使えない事を知りました。 そこで、テーブル1を大きくテーブルで囲み、ヘッダとボディ部をセルに入れて、セルの表示・非表示を切り替えました。 これは上手くいったのですが、非表示にした場合、テーブル2との間は詰まるようにしたいのですが、もともと表示されていた分のスペースが出来てしまいました。 あまり、ロジックを組み込まずに作ろうと考えているのですが、上手い方法が思いつきません。 何か良い方法がありましたら、ご教授願います。 ターゲットのブラウザは… IE5.5~IE7 です。

    • ベストアンサー
    • HTML
  • テーブルの表示がずれます

    htmlを書いているのですが、テーブルの行を増やすたびに、ブラウザで表示するとテーブルの表示がだんだん下の方へずれてしまいます。友人に聞いたところ、彼も同じような現象が起こるようです。 このようにならないようにしたいのですが、専門書を読んでも分かりません。 ちなみにhtmlソースはこのようになっております。 (1)行が1つの場合 <html> <head> <title>テスト</title> </head> <body bgcolor = "white"> <h1>テスト</h1> <h3>テスト1</h3> <table>   <tr>    <td>テスト</td>    <td>1</td>    <td>2</td>   </tr> </table> </body> </html> (2)行が2つの場合 <html> <head> <title>テスト</title> </head> <body bgcolor = "white"> <h1>テスト</h1> <h3>テスト2</h3> <table>   <tr>    <td>テスト</td>    <td>1</td>    <td>2</td>   </tr> <tr>    <td>テスト</td>    <td>1</td>    <td>2</td>   </tr> </table> </body> </html> 宜しくお願い致します。

    • ベストアンサー
    • HTML
  • 二つのテーブルを横に並べて表示するにはどうすれば

    "<table border=10><tr><td>test</td></tr></table><table border=10><tr><td>test</td></tr></table>" のように、テーブルを二つ表示させたい時に test test と、縦に並んでブラウザに表示されてしまうのですが testtest のように、二つのテーブルを横に並べて表示するにはどうすればよいでしょうか?

    • ベストアンサー
    • HTML
  • tableを作ると出来てしまう空間について教えてください。

    ウインドウズでHPを作っていて、テーブルを作るときに テーブルの上に行スペースが空いてしまいます。 1、2段のテーブルではきちんと一番上からが表示されるのですが、 何段も作っていくと、どんどんテーブルが下がって上に何行ものスペースが空いてその下からテーブルが表示されてしまいます。 きちんとテーブルは表示されるのですが、その無駄な行スペースをなくし、上から表示される方法を教えてください。 ↓テーブルはこのように作っています。 この  <td>・・・</td>  が増えるとテーブルの上に行スペースが空いてしまいます。 <table WIDTH=500 HEIGHT=300> <tr> <td>・・・</td> <td>・・・</td> <td>・・・</td> </tr> </table>

  • データが表示されません

    php4とMySQLを使用しています。 select文でデータを取得したあと while($Row2 = mysql_fetch_array($result2, MYSQL_ASSOC)){ $name = $Row2['name']; $contents = $Row2['contents']; ?> <table> <tr> <td><?=$name?></td> </tr> <tr> <td><?=$contents?></td> </tr> </table> <? } ?>で表示しようとしていますが、10件中の10件目しか表示されません。 上書きされているようです。どこがおかしいでしょうか? 教えてください。お願いいたします。

    • ベストアンサー
    • PHP
  • tableの中にtableを作りスクロールさせたい。

    tableの中にtableを作りスクロールさせたい。 tableの中にtableを作りスクロールさせたいのですが、書きサンプルで思うようになりません。 table一つなら上手くいくのですが、どこが悪いでしょうか。 <html lang="ja"> <head> <title></title> </head> <body> <table border="1" width="100%"><tr><td></td></tr> <tr> <td > <div style="height:40%;width:100%;overflow-y:scroll;"> <table border=1 width="100%" bgcolor="#9999ff"> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> <tr><td>表示したいテーブル</td></tr> </table> </div> </td> </tr> </table> </body> </html>

    • ベストアンサー
    • HTML
  • table内でiframeを表示

    table内でiframeを表示するとき、iframeの幅をtableのセルの幅に合わせるにはどうすればいいでしょうか? <table> <tr> <td>…</td> <td><iframe src="…"></iframe></td> <td>…</td> </tr> </table>

    • ベストアンサー
    • HTML
  • テーブルの内容を<a>タグでくるんだ時のアンカー

    下記のPHPスクリプトにおいて、テーブルの内容を<a>タグで 挟み、データベースの内容を表示しているのですが、 先頭レコードのアンカーだけが表示されず、ただのテキストになってしまいます。 二番目以降のレコードはテーブルの内容がアンカー付きで表示されるのですが、 先頭レコードにアンカーをつけるには、どこがまちがっているのか ご指導お願いいたします。 mysql_set_charset("utf-8"); //$sql = "SELECT * FROM hospytal;"; //$result = mysql_query($sql, $con) or die(mysql_error()); if($_POST['radio_btn']==="1"){ $sql = "SELECT * FROM hospytal order by manzokudo desc;"; // 満足度の降順 $result = mysql_query($sql, $con) or die(mysql_error()); }else{ $sql = "SELECT * FROM hospytal order by kuchikomi desc;"; // 口コミ数の降順 $result = mysql_query($sql, $con) or die(mysql_error()); } $rowco = mysql_num_rows($result); // テーブルの行数 for($i=0; $i<$rowco; $i++){ $row = mysql_fetch_row($result); // 取得された行に対応する配列を返し、内部のデータポインタを前に進める echo '<a href="'.$i.'.php?sid='.$row[0].'">'; echo '<table width="500" height="120" border="1">'; echo '<tr>'; echo '<td width="500" height="30">'.$row[1].'</td>'; echo '</tr><tr>'; echo '<td width="500" height="30">'.$row[4].'&nbsp;&nbsp;&nbsp;'.$row[5].'件</td>'; echo '</tr><tr>'; echo '<td width="500" height="30">'.$row[7].'</td>'; echo '</tr><tr>'; echo '<td width="500" height="30">'.$row[9].'</td>'; echo '</tr>'; echo '</table>'; echo '</a>'; } mysql_close($con); // データベースとの接続を解除する

    • ベストアンサー
    • PHP

専門家に質問してみよう