csvから自動でhtmlを吐き出すソフト、cgiなどを探しています。条件としては、1行の中にファイル名とフォルダ名が指定でき、自動でそのフォルダの中にファイルが入ることです。

例)
1行目(項目)フォルダ名│ファイル名│所属│課│氏名
2行目(データ)eigyo│dai1│営業部│第一課│田中
3行目(データ)keiri│dai2│経理│第二課│佐藤

吐き出されるhtmlは、「営業部、第一課、田中」の記載があり、そのファイル名がdai1、フォルダ名がeigyoになっている。
http://www.vector.co.jp/soft/win95/net/se157300.html
はファイル名の指定は出来るのですが、そのファイルは1個のフォルダにまとめて入ってしまいます。一番近いソフトです。
また、マッドアフィリエイターは、csvから自動でそのフォルダの中にファイルを入れてくれたのですが、ファイル名、フォルダ名の指定が連番のみでした。これも惜しいcgiです。
みなさん何か良いものご存じないでしょうか?
cgiを使ってmkdirなどを絡ませたり、買い物カートcgiの商品マスターcsvなどをヒントにスクリプトなど作れないでしょうか

回答の条件
  • URL必須
  • 1人3回まで
  • 登録:
  • 終了:2008/05/19 23:26:00
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:yotaca No.2

回答回数427ベストアンサー獲得回数46

ポイント70pt

「スクリプトなど作れないでしょうか」と書いてあるのでその点でお返事させていただきます。

 

PHPを使って、仕事で近いスクリプトを書いた事があります。

テキストをさわるだけなので、CSVの書式が綺麗であれば、そんなにむずかしくないかと思います。

 

もっと綺麗に書ける人はたくさんいると思いますけど…。

こんな感じで配列にセットすればいいかな?

 

 

function csvAry($f){//加工するcsvファイル名をセット

 $f = yom($f,"\n");//改行毎に配列に入れるファンクション

 

 for($i=0;count($f)>$i;$i++){//1行毎、カンマで区切る処理をする。

  

  if($f[$i]){

   $f[$i] = explode(",",$f[$i]);

   $kye = array_shift($f[$i]);//最初の行をキーとして登録

   if(count($f[$i])==1){$rv[$kye] = $f[$i][0];}//配列が一つなら、変数として扱う

    $ra[$kye] = $f[$i];//多次元用の配列

   }

  }

  

  if(count($rv) == count($ra)){$r = $rv ;}

  else{$r = $ra ;}

 

 return $r ;

}

有償になりますが、急がないなら作ってもいいですよ。

ブログのどこでもいいので、コメント入れてください。

http://blog.hanamarl.com/

URLはダミーで私のブログです。

id:inthespace

返事が送れてスイマセン。ご回答ありがとうございます!

ブログに書き込んでみます。

2008/05/19 12:07:45

その他の回答1件)

id:redwing1 No.1

回答回数541ベストアンサー獲得回数3

条件とかいっても無駄じゃないですか?だれかきいてるわけでもないし。ただでつくってくれるわけでもないし。


http://www

id:yotaca No.2

回答回数427ベストアンサー獲得回数46ここでベストアンサー

ポイント70pt

「スクリプトなど作れないでしょうか」と書いてあるのでその点でお返事させていただきます。

 

PHPを使って、仕事で近いスクリプトを書いた事があります。

テキストをさわるだけなので、CSVの書式が綺麗であれば、そんなにむずかしくないかと思います。

 

もっと綺麗に書ける人はたくさんいると思いますけど…。

こんな感じで配列にセットすればいいかな?

 

 

function csvAry($f){//加工するcsvファイル名をセット

 $f = yom($f,"\n");//改行毎に配列に入れるファンクション

 

 for($i=0;count($f)>$i;$i++){//1行毎、カンマで区切る処理をする。

  

  if($f[$i]){

   $f[$i] = explode(",",$f[$i]);

   $kye = array_shift($f[$i]);//最初の行をキーとして登録

   if(count($f[$i])==1){$rv[$kye] = $f[$i][0];}//配列が一つなら、変数として扱う

    $ra[$kye] = $f[$i];//多次元用の配列

   }

  }

  

  if(count($rv) == count($ra)){$r = $rv ;}

  else{$r = $ra ;}

 

 return $r ;

}

有償になりますが、急がないなら作ってもいいですよ。

ブログのどこでもいいので、コメント入れてください。

http://blog.hanamarl.com/

URLはダミーで私のブログです。

id:inthespace

返事が送れてスイマセン。ご回答ありがとうございます!

ブログに書き込んでみます。

2008/05/19 12:07:45

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

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

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

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

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