PHPでCSVファイルからファイルの内容を読み取って計算したいと思っています。


例えばa.csvというファイルがあり、このファイルには

1,California,a
2,Oregon,b
3,Arizona,a

と書かれています。PHPでこのcsvファイルを開いて、2列目、つまりCalifornia, Oregon,Arizonaという項目を抜き出して、プルダウンメニュー(ドロップダウンリスト)としてhtmlで表示させたいと思っています。どのように実現させればよいでしょうか?

また3列目を見て、3列目にはa,bと書かれています。a=100ドル、b=200ドルという値が設定されていて、ボタンをクリックすると3列目の値をチェックしてaなら100ドル。bなら200ドルというように表示したいとも考えてます。ご教授ください。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2006/11/16 18:03:48
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:kn1967 No.1

回答回数2915ベストアンサー獲得回数301

ポイント60pt

プルダウンメニューは

if (false !== ($lines = file("csvファイル名"))) {

    print "<select name=\"選択肢\">\r\n";

    foreach ($lines as $rec) {

      $val = split(",", $rec);

      print "<option value=\"" . $val[2] . "\">" . val[1];

    }

   print "</select>\r\n";

  } else {

    print "読み込みエラー";

  }

?>

生成されたタグ部分には3番目の値($val[2])をValueとして持たせてあるので、ボタンを押したときに呼び出されるJAVAScriptなどで組まれた計算ルーチンからSELECTタグ部分の現在選択されている値を参照することが可能になります。

※ソースは直接書いてますので動作確認はしていません。

一応簡単なエラー対応は含んでいますが、実際に使用する際にはHTMLタグなどを含めて、再検討してくださいね。

id:popattack

ありがとうございました。解決できました。

2006/11/16 18:03:34

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません