その後「ダウンロード」の方に移転しております。 (この画像をクリックすると、該当ページにジャンプします。)
その後「ダウンロード」の方に移転しております。 (この画像をクリックすると、該当ページにジャンプします。)
今回のお題 先日引き受けた相談事は「メールを使ってデータベースにレコードを登録したい」とのこと。レコードを本文としたメールを投げて、そいつがデータベースに格納されるカラクリが欲しいってんですね。例えば売上データやらアンケート結果やら、あちこちで収集したデータをメールでかき集めるのが目的なのでしょう。「そんなもん、どこぞにWeb-serviceをホストしておいてHTTPで投げればいぃんじゃね?」と答えたところ、できるだけチープに実現したく、サーバ立てるのは避けたいそうな。 なるほど、そう言うことなら納得です。テキトーなメールアカウントを1つ用意し、みんなが寄ってたかってそいつめがけてメールを投げつけ、小さなアプリケーションがメールを読んでデータベースに流し込むってスンポーですか。「登録したいレコードって定型なの? どれも同じフォーマットなら実装楽なんだけど」と訊くと依頼主曰く「いや、ゆくゆく
HTMLメールで、さらに本文内に表示する画像を添付したMIMEデータを簡単に作成することができます。MIME::LiteのドキュメントのSend an HTML document... with images included!の項に、サンプルコードがあります。以下2点がポイントのようです。 画像をattachする際、Idを指定する。 HTML(本文)内にimgタグのsrcには、"cid:(画像添付時に指定したId)"を指定する。 以下は、ActivePerlに同梱されてくる画像を埋め込んだメールデータを作成し、標準出力に出力する例です。 From、Toは適切なアドレスに変更してください。 use MIME::Lite; use Jcode; my $subject = "PerlScriptロゴ"; my $data = <<EOF; <body> PerlScriptロゴ<br />
HTMLメールを使う場合にHTMLメールの中で画像を使用する場合は使用する画像ファイルをMail_Mimeクラスで用意されている「addHTMLImage」メソッドを使って指定します。 Mail_Mime::addHTMLImage() boolean addHTMLImage (string $file, string [$c_type = 'application/octet-stream'] [, string $name = '' [, boolean $isfile = TRUE]]) 引数: $file 画像ファイル名か、画像データ自身 $c_type イメージかファイルの内容の種類 $name $fileが画像データの場合の画像ファイル名 $isfile $file がファイル名かどうか 戻り値: 成功時には TRUE、失敗時にはPEAR_Error 1番目の引数に画像ファイ
ASPや、PC版ソフトではなく、お使いのサーバーに設置するCGIタイプなので自由自在にお使いいただけます。 エーシーメーラーの特徴 フリーライセンスでは、acmailerへのリンク付の著作権を表示していただける限り全機能そのまま無料でお使いいただけます。広告なども一切入りません。 ライセンスについて acmailerは無料で使えるメール配信CGIです。 あなたのWEBサイトにシステムを設置する独自配信タイプなので、思い通りのメール配信を行うことができます。 送信数や登録アドレス数も無制限。既存の顧客管理システムとの連動も自由自在。 機能面においては、長年培ったノウハウをもとに、皆様よりいただいたご意見を随時取り入れ、積極的にバージョンアップを行っていますので、フリーとは思えないほど高機能なシステムです。 設置もワンクリックオートインストールで非常に簡単。 メルマガ発行・運営の強い味方、ac
Mail::factory() を使ってメールインスタンスを作成し、メールを組み立てて Mail::send() で送信します。 バックエンドにSMTPを使用する場合の実装例は以下の通りです。 require_once 'Mail.php'; $param = array( host'=>'smtp.example.com', port'=>'25'); $mailobject = Mail::factory( 'smtp', $param ); $recipients = 'to@example.com'; $headers = array( 'From'=>'from@example.com', 'To'=>$recipients, 'Subject'=>'Test' ); $body = 'Test Mail'; $mailobject->send( $recipients, $he
以前、バックエンドにSMTPを使用して PEAR::Mail でメールを送信する方法を記事にしましたが、 [PHP] PEAR::Mailを使ってメールを送信する(SMTP編) バックエンドに qmail を使使用する場合は、メールインスタンス作成時のパラメータ配列を以下のように指定します。 $param = array( 'sendmail_path'=>'/var/qmail/bin/qmail-inject', 'sendmail_args'=>'' ); $mailobject =Mail::factory( 'sendmail', $param ); このとき、sendmail_path に qmail のパスを指定するだけでは、正常にメールを送信することができないようです。 2つ目のパラメータ'sendmail_args'がデフォルトで'-i'になっているのですが、これが qm
相変わらず仕事ではまったく触れるのことのないCakePHPをひたすら触ってます。 Cake楽しくて楽しくてしょうがない感じです。どうしよ。 CakePHP2.0のCakeEmailでメールを送信してみました。 参考にしたのは以下。ありがとうございます。 http://bimi.jpn.com/?p=188 環境 CakePHP2.0.5 PHP5.3.8 Emailの設定 configファイルにEmailの設定を行います。 以下のファイルをコピーして「email.php」に変更します。 app/Config/email.php.default 設定ファイルの中身はこんな感じ。今回はgmailで試したのでgmailになっているけど、これは何でもよいかと。 <?php class EmailConfig { public $gmail = array( 'host' => 'ssl://smt
QdmailはCakePHPのコンポーネントとしても動作します(バージョン0.7.6.a以降)。 自分自身でCakePHP内から呼ばれているのか、通常のPHPアプリケーションから呼ばれているのか判別しますので、ユーザーはファイルを使い分けたりする必要はありません。 2008-10-01追記 下記、サイトにてスマートなCakePHPでのQdmailの使い方を紹介していただいております。ぜひご参照下さい。 cakePHP メール送信はもうこれでいいでしょ -LoveIT - 安江ブログ 使い方(初期設定) 通常のCakePHPコンポーネントと同じです。 次のディレクトリに qdmail.php ファイルをコピーしてください。 app/controllers/components/ 使用したいコントローラーで、以下のプロパティの宣言を行ってください。 var $components=array(
メールを高速に配信する方法について調べてみました。 今回、MAILER DAEMONはpostfixで、サンプルプログラムはPHPで記述しています。 ■サンプルプログラム 以下に今回の実験で使用する配信テストの為のサンプルプログラムを示します。 1000通送信して終了するだけの単純なプログラムです。 mailsend.php まずメール送信部分です。 <?php require_once "Mail.php"; $params = array( 'host' => '127.0.0.1', 'port' => '25', 'auth' => false, 'username' => '', 'password' => '', 'persist' => TRUE, // TRUEにすると配信毎に接続を切らない。 ); $from = 'xxxxxxxxx@example.com'; $rec
送信したいメールをキューに積んで、あとでまとめて送信できるライブラリ。 あるプロセスからDBにメールを積み、別のプロセスがそれを読んでメール送信する ということを実現するクラス。 PEAR::Mailを使って送信する。キューにはデータベースを使用する。 データベースへのアクセスには、同じくPEARのMDB2モジュールなどが使われる。 (=キューの初期設定にMDB2用の設定が必要) あと、PEAR::Mail用の設定が必要。 PEAR::Mail メールを送信するライブラリ mail()を使う sendmailコマンドを呼ぶ SMTPを直接叩く のどれかを選択できる。 SMTPを直接叩くを選ぶと、SMTPサーバとの接続を切らずに連続送信することも出来るっぽいので大量連続送信に使える。はず。
PHP でメールを非同期に送信する時に PEAR の Mail_Queue を使用するときのメモです。 Mail_Queue のマニュアル PEAR :: Manual :: Mail_Queue 上記マニュアルにあるチュートリアルが分かりやすいです。 PEAR :: Manual :: チュートリアル 処理の流れとしては下記のようになります。 データベースに送信するメールを貯める cron で定期的に貯まったメールを送信する メール送信は下記のコードで行います。 $mail_queue->sendMailsInQueue($max_amount_mails); $max_amount_mail で1回に送る最大送信数を指定します。これをいくつにするか、また cron で実行する間隔をどれくらいにするかなどの調整の方がプログラムの作成よりも大変かもしれませんね。 OpenPNE でも co
シンプルな例を用いた Mail_Queue の使い方 ここでは、例として DB コンテナと mysql データベースを使用します。 mysql データベースに、(キューに追加される)メッセージをストアしておくための テーブルを作成する必要があります。 CREATE TABLE mail_queue ( id bigint(20) NOT NULL default '0', create_time datetime NOT NULL default '0000-00-00 00:00:00', time_to_send datetime NOT NULL default '0000-00-00 00:00:00', sent_time datetime default NULL, id_user bigint(20) NOT NULL default '0', ip varchar(20)
object &factory ( string $backend , array $params = array() ) Parameter string $backend - バックエンド名 "mail"、"smtp"、 "sendmail" array $params - バックエンド固有ののパラメータの配列。 バックエンド毎のパラメータ一覧 mail セーフモードが無効の場合、 $params は PHP mail() 関数の 5 番引数として渡されるでしょう。 $params が配列の場合、 その要素はスペース区切りの文字列として連結されるでしょう。 sendmail $params["sendmail_path"] - システム上での sendmail プログラムの場所、デフォルトは、 /usr/bin/sendmail $params["sendmail_args"] - s
他にも多くのメールのヘッダーが使われています。 3番目の引数にはメールの本文を表す文字列を指定します。 例えば次のように記述します。 $params = array( "host" => "***.***.***.***x", "port" => 25, "auth" => false ); $mailObject = Mail::factory("smtp", $params); $recipients = "xxx@xxx.xxx, xxx@xxx,xxx"; $headers = array( "To" => "xxx@xxx.xxxx", "From" => "xxx@xxxx.xxxx", "Subject" => "Test Mail" ); $body = "This is test mail"; $mailObject -> send($recipients, $heade
メールソフトを使ったときには、メールの送信と受信では全く別の仕組みが利用されます。 ここでは、そのうちの電子メールをメールサーバに送信する仕組みであるSMTP(Simple Mail Transfer Protocol)について解説したいと思います。 SMTPとは? SMTPはメールサーバにメールを送信するためのプロトコルです。 SMTPには2つの側面があります。 一つは、一般のユーザが電子メールアプリケーションを利用してメールサーバにメールデータを送信するという使われ方です。 もう一つは、メールサーバから別のメールサーバに対してメールデータを送信するという使われ方です。 前者の側面は普段から利用しているユーザも多く、なじみやすいと思います。 しかし、後者の使われ方は何のことだか良くわからないと思うかもしれません。 まずは、メールソフトからメールサーバにSMTPを使ってメールを送信するだけ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く