タグ

2008年3月31日のブックマーク (2件)

  • S-MEMO(エスメモ): PEAR::Mailを使ってメールを送信してみよう

    PHPにはmb_send_mail()関数という日語を含めたメールを送信する機能がありますがよく文字化けします。PHPの自動エンコーディング機能がうまくいかずに文字化けをするのですが、設定がシビアなので使ってません。例えば、同じサーバーを使っている場合は制作時に気をつければ問題ありませんが、サーバーを移行するようなことがあると新しいサーバーでメールが文字化けしたり結構大変だったりします。 結局send()関数を使うのですが、これで日語のメールを送信する為には追加メールヘッダを記述する必要があります。mb_send_mail()関数よりはマシですが、これもこれで設定に左右されるので意外と大変。メール送信用の自作関数を作ったものの完璧ではありませんでした。 最終的に落ち着いたのは、PEARのMailです。記述がシンプルな上に自由に設定できて便利。 ということで今回はPEAR::Mai

  • Kung Noi:telnetでsmtp-authをやる

    SMTP-AUTH関連のperlを作成していていろいろ試したので書いとく。telnetでSMTP-AUTHはできるが、Base64のエンコードやデコード、MD5でのダイジェストはperlとかのプログラムを使用しないとならない。それならNet::SMTPとか使った方が簡単だ。勉強の用途や、なんかのプログラム作るってなら参考になるかも。 plain plain認証は以下の形でクライアントからサーバへ渡す AUTH PLAIN Base64デコード(ユーザ名NULLユーザ名NULLパスワード) ユーザ名がuserでパスワードがpassなら、こうなる。 AUTH PLAIN dXNlcgB1c2VyAHBhc3M= エンコードの方法 Base64エンコードはこんなんで変換すればよい $perl -MMIME::Base64 -e 'print encode_base64("user\0user\0