[PHP-users 4087] Re: テキスト入力フィールドへ入力した値を CSV へ保存

Osamu Shigematsu php-users@php.gr.jp
Mon, 03 Dec 2001 17:52:21 +0900


重松です。

同じメールが 2 通来てるんですが。。。

> CSVファイルからfgetcsv関数を用いてデータをオープンし、
> 各値を配列($csv[$i][$j])に入れてテキスト入力フィールド
> に格納しています。

本当に格納できてますか?
print_r するなりして確認していますか?
その部分のコードを示さないのは何故?

> $fp = fopen ("sample.csv","rb");
                              ^
"rb" の b の意味は?
CSV って「テキストファイル」ですけど?

> fwrite ($fp, $string);
> $string= $csv[$i][$j];

fwrite して書き込んでから、$string に値を代入している意味は?
$i, $j の値は?

どうして、

    fwrite($fp,$csv[$i][$j]);

と書かないの?

値を連続して書いてそれって CSV ですか?
CSV って、Comma Separated Value, カンマ区切りの意味だから、
カンマで区切らないとダメだと思うのは私だけ?

    fwrite($fp,implode(',',$csv[$i])); // 手抜き

もちろん、文字列の場合、"" ってクオートする必要があるし、
文字列の中に不適切な文字があれば?宜エスケープする必要なんかもありますよね。

> と記述し、テキストフィールドに値を入力すると、
> もとのCSVファイルにその値が保存され、ファイルが
> 更新されるという処理を行いたいのですが、できていません。

できていないと判断した根拠は?

特に隠すほどのコードではないと思うのに、何故ごく一部しか示さないのですか?

やりたいこと、聞きたいこと、全て意味不明です。。。

-- 
Osamu Shigematsu

http://www.ravi.ne.jp/%7eshige/
mailto:shige@ravi.ne.jp