• ベストアンサー

CSV形式の表の内容をHTMLファイルのTABLEに表示する方法は?

どうしてもわからず困っています。どなたかおわかりの方がいらっしゃいましたら、是非お教えください。 ●CSVファイル(data.csv)の内容が下記の場合、 品番,商品名,価格 0001,りんご,100 0002,いちご,150 0003,すいか,200 ●HTMLファイル(index.html)に以下のように表示したいです。 <table> <tr><th>品番</th><th>商品名</th><th>価格</th></tr> <tr><td>0001</td><td>りんご</td><td>100</td></tr> <tr><td>0002</td><td>いちご</td><td>150</td></tr> <tr><td>0003</td><td>すいか</td><td>200</td></tr> </table> データバインドという方法もあるようなのですが、IE以外のブラウザでは表示できないみたいなのです。 できれば、IE,Firefox,サファリの最新版での表示ができればと思いますので、それ以外の方法(php,xmlなど?)でできればと思います。 わかりづらい説明で申し訳ないです。 宜しくお願い致します。

みんなの回答

回答No.3

mytext.txt という名前で TEXTファイルが必要です PHPと同じ場所に置いて下さい パーミッションを正しくしてください http://power.scianto.net/php/note/id50.php

  • uki629
  • ベストアンサー率23% (40/172)
回答No.2

>カンマだと 文中のカンマも区切りになってしまうので >タブ区切りtxtをオススメします 通常CSV形式で区切り以外で「,」を使う場合には「"」で囲っておくを書く必要があります。

回答No.1

PHPでもできます とてもカンタンにできると思います テストする環境が必要なので準備してください <XAMPP> XAMPPというソフトを用意してください http://cowscorpion.com/dl/XAMPPforWindows.html 無料で簡単に準備することができます http://www.thinkit.co.jp/free/article/0701/12/3/ http://www.thinkit.co.jp/cert/article/0701/12/3/2.htm Apacheだけ使います  インストールしたらデスクトップにアイコンが作成されます アイコンから起動して Apache だけ起動してください <テスト> http://localhost/ これを開いて表示されるか確認してください http://localhost/xampp/phpinfo.php これ開いて表示されるか確認してください これが確認できたら PHPの準備完了です もしできなくてもOKです どこで どのようにできなかったか教えてください テストが終わったら つぎにCSVの表示の確認をします

関連するQ&A

  • CSVファイルより自動でHTML形式で表示したい。

    CSVファイルより自動でHTML形式で表示したいのです。 たとえば、csv ファイルの中身が、 room.csv 部屋名,温度,湿度,料金 101,23.5,40,15000 102,23.2,40,16000 103,23.0,40,17000 104,23.4,40,19000 となっているとします。 room.htmlでもroom.cgi 等で表示させ ブラウザのソースを見たときには、 <table border=4 width=250 align=center> <tr bgcolor="#cccccc"> <th>部屋名</th> <th>温度</th> <th>湿度</th> <th>料金</th> </tr> <tr align=center> <td>101</td> <td>23.5</td> <td>40</td> <td>15000</td> </tr> <tr align=center> <td>102</td> <td>23.2</td> <td>40</td> <td>16000</td> </tr> <tr align=center> <td>103</td> <td>23.0</td> <td>40</td> <td>17000</td> </tr> <tr align=center> <td>104</td> <td>23.4</td> <td>40</td> <td>19000</td> </tr> </table> のように、したいのですが、 可能でしょうか? perl等のプログラムの知識は、ほとんどありません。 作ってあるものをアップロードして動くようにすることは、出来ます。

  • HTMLのテーブルタグでCSVデータ表示

    HTML素人です。 色々参考にしていますが、どうしてもわからず困っています。 もし分かる方がいましたら、ご教示お願い致します。 見よう見まねで下記のようなHTMLのテーブルを作成したのですが、 この見出しの下のデータ部分から、指定の格納フォルダに保存しているCSVデータを読み込んで表示させるといったことがしたいです。 (できれば、フォルダ内に新たにCSVデータが保存されたとき、 一度読み込んだファイルの次から表示されるようにしたいです。) 大変恐縮ですが、ご教示お願い致します。 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>発注書</title> </head> <body> <header> <h1>発注書</h1> </header> </body> <table border> <tr> <th bgcolor="#00ffff">No</th> <th bgcolor="#00ffff">商品</th> <th bgcolor="#00ffff">商品名</th> <th bgcolor="#00ffff">数量</th> <th bgcolor="#00ffff">金額</th> <th bgcolor="#00ffff">合計金額</th> <th bgcolor="#00ffff">コメント</th> <th bgcolor="#00ffff">備考①</th> <th bgcolor="#00ffff">備考②</th> <th bgcolor="#00ffff">備考③</th> </tr> <tr> <td>2-1</td> <td>2-2</td> <td>2-3</td> <td>2-4</td> <td>2-5</td> <td>2-6</td> <td>2-7</td> <td>2-8</td> <td>2-9</td> <td>2-10</td> </tr> <tr> <td>3-1</td> <td>3-2</td> <td>3-3</td> <td>3-4</td> <td>3-5</td> <td>3-6</td> <td>3-7</td> <td>3-8</td> <td>3-9</td> <td>3-10</td> </tr> </table> </html>

  • 表の結合をcsvで保存するには?

    教えてください。 商品検索ツールを利用しています。 商品詳細データはcsvで保存されます。 表の結合をしたいのですがうまくいきません。 たとえばビルダーで編集すると <TABLE border="1"> <TBODY> <TR> <TD colspan="4">&nbsp;商品の詳細</TD> </TR> <TR> <TD rowspan="2">&nbsp;コード&nbsp;</TD> <TD colspan="2">&nbsp;&nbsp;サイズ</TD> <TD rowspan="2">価格&nbsp;&nbsp;</TD> </TR> <TR> <TD>mm&nbsp;</TD> <TD>&nbsp;インチ</TD> </TR> <TR> <TD>&nbsp;000005</TD> <TD>&nbsp;***</TD> <TD>○○&nbsp;</TD> <TD>&nbsp;¥50</TD> </TR> </TBODY> </TABLE> と、このようにソースに表示されますが、 これらをcsvで保存しても???になります。 このような表をcsvファイルで作成することは可能なのでしょうか? よろしくお願い致します。

  • HTMLのテーブルについて

    HTMLのテーブルについて 今、HTMLを勉強しています。下記のようにテーブルを作成し一部にセルの結合を行ったところ、(2)の結合したセル右端から外枠までが広がってしまいます。せっかく綺麗に見えるように上の表と下の表のセル幅を合わせても、上の表の右端が出っ張ってしまって意味がありません。 これを解決するにはどのように改善すればいいのでしょうか? <html> <head> <title>A</title> </head> <body> <table border="2"> <tr> <th>No.</th> <th>名前</th> <th width="50">備考</th> </tr> <tr> <td>1</td> <td>A君</td> <td>(1)</td> </tr> <tr> <td>1</td> <td>B君</td> <td rowspan="2">(2)</td> </tr> <tr> <td>1</td> <td>C君</td> <td></td> </tr> </table> <br> <table border="2"> <tr> <th>No.</th> <th>名前</th> <th width="50">備考</th> </tr> <tr> <td>2</td> <td>D君</td> <td>(3)</td> </tr> <tr> <td>2</td> <td>E君</td> <td>(4)</td> </tr> <tr> <td>2</td> <td>F君</td> <td>(5)</td> </tr> </table> </body> </html>

  • csvデータをテーブル表示させる

    再び新規質問で申し訳ありません これしか方法がわからなかったもので; csvデータから最初の項目に5というものが含まれている場合 その列を表示する、というのを先ほど質問させていただいて解決に至りました。 csvデータファイルの内容 5,データ1,データ1の説明 5,データ2,データ2の説明 5,データ3,データ3の説明 6,データ4,データ4の説明 ・・・ ↓ open(IN, "data.csv"); while (<IN>) { if ((split(/,/))[0] == 5) { print $_. "\n"; } } close(IN); これで最初の欄に5が含まれている列だけ表示されるのですが htmlに出力すると、そのまま下記のように表示されます 5,データ1,データ1の説明 5,データ2,データ2の説明 5,データ3,データ3の説明 これでは余りにみずらいので、以下のように変更しました open(IN, "data.csv"); print "<table>"; while (<IN>) { if ((split(/,/))[0] == 5) { print "<tr><td>". $_. "</td></tr>"; } } </table> close(IN); これで少しは見やすくなったのですが・・・ ↓のように。 5,データ1,データ1の説明 5,データ2,データ2の説明 5,データ3,データ3の説明 この,で区切られた部分も</td><td>で表示したいのですがうまくいきません。 先ほど質問した時に教えていただいたURLを参照しましたがサッパリでした; 検索で、csvファイルをリストに格納して print "<table><tr>"; print "<td>$data_view[0]</td>"; print "<td>$data_view[1]</td>"; print "<td>$data_view[2]</td>"; print "</tr></table>"; と表示させれば良い、という記事をみつけたのですが これをすると 先ほど成功した最初のデータに5が一致した分だけ表示させる、という部分が機能しませんでした;; まだまだ勉強不足かとは思いますが何卒お願い致します

    • ベストアンサー
    • Perl
  • HTMLのテーブル内容を配列にするには

    <html> <head></head> <body> <table border="0">   <tr>     <td>りんご</td>     <td>100円</td>   </tr>   <tr>     <td>みかん</td>     <td>80円</td>   </tr>   <tr>     <td>もも</td>     <td>160円</td>   </tr> </table> </body></html> 上のような内容のHTMLページを読み込み、 テーブルの一番左の行(りんご、みかん、もも)の内容を   @list=("りんご","みかん","もも"); このように配列に代入したいのですが、 どうすればいいでしょうか。よろしくお願いします。

    • ベストアンサー
    • Perl
  • 二の表の値の計算をしたい。

    いつもお世話になります。 見よう見まねでやっている超初心者です。 下の様なテーブルが二つあるページで テーブルabcの<td>のリンゴ、なす、西瓜の数値を テーブルefgのリンゴ、なす、西瓜の元値の値に 対して+-してその売値の数値を を自動で計算して求めたいと思っています。 <td>?</td>(()内の回答のように) 表の値はどちらも可変します。 jabascriptでなるべくシンプルで簡単にできないでしょうか? ご教授の程、どうぞよろしくお願い致します。 <table id="abc"> <tr> <th>リンゴ</th> <th>なす</th> <th>西瓜</th> </tr> <tr> <td>-20</td> <td>-10</td> <td>+200</td> </tr> </table> <table id="efg"> <tr> <th >ID</th> <th>果物</th> <th>元値</th> <th>売値</th> </tr> <tr> <td>1</td> <td>リンゴ</td> <td>140</td> <td>?(120)</td> </tr> <tr> <td>2</td> <td>リンゴ</td> <td>120</td> <td>?(100)</td> </tr> <tr> <td>3</td> <td>なす</td> <td>40</td> <td>?(30)</td> </tr> <tr> <td>4</td> <td>なす</td> <td>80</td> <td>?(70)</td> </tr> <tr> <td>5</td> <td>すいか</td> <td>800</td> <td>?(1000)</td> </tr> <tr> <td>6</td> <td>すいか</td> <td>1000</td> <td>?(1200)</td> </tr> </table>

  • HTMLで文とテーブルの間が空く。

    現在HTMLとCSSでホームページを作成しています。 それで文とテーブルの間に意図しない空欄ができてしまいます。 この理由と対策を教えてください。 HTMLは↓ <div id="contents"> <div id="main"> <h2>会社概要</h2>       <table class="table">       <tr>       <th>社名</th>       <td></td>       </tr>       <tr>       <th>所在地</th>       <td></td>       </tr>       <tr>       <th>代表者</th>       <td></td>       </tr>       <tr>       <th>設立</th>       <td></td>       </tr>       <tr>       <th>資本金</th>       <td></td>       </tr>       <tr>       <th>従業員数</th>       <td></td>       </tr>       <tr>       <th>関連会社</th>       <td></td>       </tr>       </table> </div><!-- main end --> <div id="totop"> <p><a href="#top">ページのトップへ戻る</a></p> </div><!-- totop end --> </div><!-- contents end --> です。 この会社概要<h2>と<table>の間に十数行の空欄ができます。 CSSを取り除いてHTMLだけにしても、こう表示されます。 ご回答お願いします。

    • ベストアンサー
    • HTML
  • HTMLを使って表を作成しているのですが、枠線がキレイに揃いません。

    HTMLを使って表を作成しているのですが、枠線がキレイに揃いません。 下のソースで50と130のとこをきちんとエクセルのように枠線揃えたいのですが、 どのようにしたら良いのでしょうか? よろしくお願いします。 <HTML> <BODY> <TABLE border=1><TR> <TH width="50"></TH> <TH width="135"></TH> <TH width="65"></th> <TH width="65"></th> <TH width="65"></th> </TR><TR> <TD colspan="5"> <TABLE border=1><TR> <TD width=50>50</TD> <TD width=200>200</TD> <TD width=130>130</TD> </TR><TR> <TD width=50>50</TD> <TD width=200>200</TD> <TD width=130>130</TD> </TR></TABLE> </TD> </TR><TR> <TD colspan="5"> <TABLE border=1><TR> <TD width=50 rowSpan=2>50</TD> <TD width=135 rowSpan=2>135</TD> <TD width=65 rowSpan=2>65</TD> <TD width=130 colSpan=2>130</TD> </TR><TR> <TD width=65>65</TD> <TD width=65>65</TD> </TR><TR> <TD width=50>50</TD> <TD width=135>135</TD> <TD width=65>65</TD> <TD width=65>65</TD> <TD width=65>65</TD> </TR><TR> <TD width=250 colSpan=3>250</TD> <TD width=65>65</TD> <TD width=65>65</TD> </TR></TABLE> </TD> </TR><TR> <TD colspan="5"> <TABLE border=1><TR> <TD width=250>250</TD> <TD width=130>130</TD> </TR></TABLE> </TD> </TR> </TABLE> </BODY> </HTML>

    • ベストアンサー
    • HTML
  • テーブル列の表示・非表示機能の追加

    <table border="0" id="tbl1"> <tr> <th>A1</td> <th>B1</td> <th colspan="2">C1</td> </tr> <tr> <td>aaa</td> <td>bbb</td> <td>ccc</td> <td>ddd</td> </tr> <tr> <td>aaa</td> <td>bbb</td> <td>ccc</td> <td>ddd</td> </tr> </table> というテーブルで、C1列(要はデータcccとdddの2列)を表示/非表示を行いたいです。 調べてみたところ、colspanが設定されている例がありませんでした。 お判りになる方、よろしくお願いします。

専門家に質問してみよう