- PR -

postgreSQL8.0+Win2003でCSV読めず・・・

1
投稿者投稿内容
zu-ka
会議室デビュー日: 2005/05/16
投稿数: 2
投稿日時: 2005-05-16 13:43
初めまして。以下のようなトラブルで困っています。
【環境】postgreSQL8.0+Win2003 Server+PHP+Apache-1.3.33
    postgreSQL文字コード:EUC_JP
【状況】ブラウザからCSVファイルを選択させて、テーブルにインポートしようとしているのですが、うまくいかない。
ちなみにWin2000では問題無くできていました。

fgetcsv($fp, 8192, ",") で読み込んで、
mb_convert_encoding($data[$i], "euc-jp", "sjis");
でエンコードしてます。

ブラウザには、何のエラーも表示されないので、psqlでcopyしてみたら
以下のようなメッセージが出てました。
WARNING: ignoring unconvertible UTF-8 character 0xee4641
CONTEXT: COPY syokuin_tbl, line 1
      〜<中略>〜
WARNING: ignoring unconvertible EUC_JP character 0x8d83
WARNING: ignoring unconvertible EUC_JP character 0xa7f7

ERROR: invalid input syntax for integer: "t,ゥ,,ID,,p,p,,,,,P,Q,R,d,d,AX,ゥb,ゥ,d,ID,O,,"
CONTEXT: COPY syokuin_tbl, line 1, column sakujyo_flag: "t,ゥ,,ID,,p,..."

読み込もうとしているCSVファイルはSJISなのに、utf-8とかEUC_JPのワーニングが
出ているのです。
何が悪いのか、どなたか、アドバイス頂けないでしょうか。宜しくお願いします。
zu-ka
会議室デビュー日: 2005/05/16
投稿数: 2
投稿日時: 2005-05-24 16:43
自己レスです。
解決しました。
Win2003の場合、php.iniの文字コード辺りの設定を変更しないとダメなようです。
1

スキルアップ/キャリアアップ(JOB@IT)