• ベストアンサー

メールフォームで改行スペースを携帯で受信した場合に...

配布CGIのメールフォームを使用しています。 携帯(ソフトバンク)宛にメールフォームで入力文中に一行の空スペースを入れた場合に、携帯で受信したメールには2行分の空スペースが入ってしまいます。この原因について教えてください。 なお、PCでアウトルックやウェブメールで受信した場合には一行の空スペースのままきちんと受信可能で、ソフトバンク以外の携帯キャリアではどうなるのか分かりません。 Perlはあまり詳しくありませんが、 $body =~ s/<br>/\n/g; ↑この部分の記述を変更すれば、携帯で改行スペースが1つ増える不具合を改善できますでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • moon_night
  • ベストアンサー率32% (598/1831)
回答No.1

多分\r\nを<BR><BR>と読み取っているのではないかと思います。 >$body =~ s/<br>/\n/g; はデコード(LOGから表示する形式に戻す)側なので、エンコード(入力されたものをLOGに保存する形式に変更)しているところで余計な改行が入るのかと推測されます。 しかし、具体的にはソースを見ないと分かりません。

umistu
質問者

お礼

アドバイス有難うございます。 改行コードを変換して問題は解決しました。 $body =~ s/\r\n/\r/g; $body =~ s/\n/\r/g;

関連するQ&A