CGI-BBS > 基礎 > エディタ > chomp使用時の編集方法


カレッヂ
カレッヂ


質問者 蒼い砦  投稿日 4/16(火) 20:56:21
データ量が多くなり、WEBで編集すると時間がかかってしまうため、
PCへ持ってきてからエクセルで編集し、上書きしてそのままアップをしました。

しかし登録時、chompを使っていたためエクセルでデータを更新したときに
改行コードが削除されて保存されてしまいました。

警告で「コロンや改行データは失われる可能性があります」と
言われたと記憶しています。
それにも関わらずアップしてしまい現在WEBではランタイムエラーとなり
デバックが起動してしまう始末・・・。

私が過去の質問回答にあった
「手元に落として表計算ソフトで手直し」という意味を取り間違えたのでしょうか。

自分のパソコンに持ってきてデータ編集は無理なのでしょうか。

お手数ですがお時間があればご返答下さい。
回答者 しあわせのツボ  [削除]  投稿日 4/17(水) 11:47:53
どのスクリプト(あるいはどのような形式)のデータを、どのようにアップしたのですか?
普通にFTPでアップすればスクリプトは関係ないはずです。
これだけではちょっと状況がわかりません。
質問者 蒼い砦  [削除]  投稿日 4/17(水) 14:17:52
申し訳ありませんでした。補足いたします。

こちらのWEB裏技さんの簡易データベースプログラム「登録CGI」を使い
データベースを作成しています。
作成されたデータベースはCSV形式で保存されます。

検索結果を表示させるときに画像リンクをさせるため、「検索CGI」ソースの中に
行末の改行を取り除く『chomp』コマンドを挿入。

($d,$DATE,$NAME,$EMAIL,$SEX,$AGE,$HANDLE,$PREF,$REM,$URL) =
split(/\,/,$data);

chomp $URL;


一度WEB上で作成したデータベースをFTPでPCへダウンロードし、
エクセルにてデータを修正。CSV形式にて保存。
上書きしたデータをFTPにてサーバーへアップしました。

しかし検索結果を見てみると画像URLの後ろに改行が入ってしまうため
エラーとなっていました。

現在は同じくWEB裏技さんのエディタを使ってひとつひとつ修正更新しています。
すると改行が直って元通り表示されます。
回答者 しあわせのツボ  [削除]  投稿日 4/17(水) 16:18:18
手元マシンのOSは何ですか? 状況からすると、たぶんWinだと推測されます。
Winでは\r\nの2バイトで改行を表しますが、UNIX系OSは\nだけを改行と認識します。その結果、取り残された\rが誤動作を引き起こしていると思われます。
FTP時に「テキスト(アスキー)」で転送するか、転送前に改行コードを変換できるエディタを使い「UNIX(LF)」に変換してから転送してみてください。

返信(回答)する


Web裏技