No.3ベストアンサー
- 回答日時:
まず
phpだけではできません。
また、内部のメールサーバー(MTA)がなにかによっても違います。
独自でドメインを持っていて、mx(メールエクチェンジャ)を持っている場合は携帯への電送は比較的楽です。
もし、プロバイダ経由で送る場合、smtp(25)がブロックされていますので、送れません。
この場合はsmtpauthを使います。
(私はsendmailやexim4でのsmtpauthが面倒だったので、postfixをつかってますが。)
必要なもの
ntpdate若しくはxntpd
nkf
mhn
そしてShellスクリプト
あとはcrontabに記述してcronデーモンに
kill -HUP [cronのpid]
とすれば再度設定ファイルを読み込みます。
流れ
phpでなにか文章を書く。
cronがShellスクリプトを呼び出す。
自身のメールサーバー(MTA)が配送する。
認証が必要な場合はMTAを設定する。
参考スクリプト
------------------cu hear------------------------------
#!/bin/sh
PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin:/usr/local/mh:/usr/local/netpbm:/usr/local/sbin
#秒までいらなければ%Sを外す。日付がいらなければ%Y%m%dも外す。
#DATE=`date +'%Y%m%d%H%M%S'`
DATE=`date +'%H%M'`
if [ $DATE = $1 ]; then
umask 077
(
echo "From: local@local"
echo "To: mobile@mobile"
echo "Subject: 件名ですよ"
echo "--------"
echo " "
echo "おくりまーす。"
) | /usr/bin/nkf -j > /tmp/sendfile
echo 'send' | comp -use -editor /usr/local/bin/mhn -file /tmp/sendfile >/dev/null
fi
------------------cu hear------------------------------
このファイルを/home/hagahoge/MOB.shなどと作成して、chmod +x /home/hagahoge/MOB.sh
とする。
crontabには
* * * * * hagahoge /home/hagahoge/MOB.sh "1500" > /dev/null 2>&1
Shellスクリプトにある$1は引数の一番め 1500が代入される。
dateコマンドはManpage of DATEで検索してみてください。
あと注意としてマシンの日付は必ず同期をとってください。
ありがとうございます。
詳しく回答していただきまして、大変参考になりました。
本当に有難く思っております。
説明のなさり方も、概要と必要なもの、流れと具体的なスクリプトと、非常に分かりやすく、感服いたしました。
早速、ご教授いただきました通りに取り組んでみたいと思います。
ありがとうございました。
No.4
- 回答日時:
ちょっと邪道かもしれませんが、以前居た会社で実際に行っていた方法を書いてみます。
方法1.Windows のスケジュールを使ってスクリプトを実行する
方法2.Cygwin をインストールし、cron を Windows サービスとして登録し、cron で時間指定を行う
No.2
- 回答日時:
一般的にはOSに付属している時間起動ツールを使います。
Windowsの場合は、「すべてのプログラム→アクセサリ→システムツール→タスク」で登録します。
Linuxの場合は、cronという機能を使い、crontabコマンドで登録します。
こういうツールを使わない場合は、こんな感じですが、
while(true) {
time=getdate();
if(timeが指定時刻か?) {
処理の実行;
}
sleep(60);
}
60秒待ってしまうと微妙にずれていくので工夫が必要でしょう。
ありがとうございます。
実は、
if(timeが指定時刻か?) {
の部分の、まさにこの括弧内をどう表現すればよいのか、表現すれば実行されるのか、という部分が疑問でした。
また、仰るようにタイムアウトなどの問題もありますよね。
まだまだ勉強しなくてはいけないと、改めて思いました。
ありがとうございます。
No.1
- 回答日時:
タスクスケジューラでバッチで実行すればよいでしょう。
http://www.atmarkit.co.jp/fwin2k/win2ktips/335ta …
メールを送るのはmail関数などになるかと。
http://www.php.net/manual/ja/ref.mail.php
ありがとうございます。
ウィンドウズのクスクスケジューラとPHPを組み合わせるということですね。
ただ、それですと、phpを使う必要もない気がします。
メーラーと組み合わせたほうが効率的ではないかと。
(質問の仕方がまずかったですね…。
phpを使うのは、web上での機能としてという意味でした。)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux redmineにメールを飛ばす方法 1 2022/09/13 22:02
- その他(Microsoft Office) Outlookでの時間指定送信機能について 2 2023/06/23 20:41
- PHP phpの imap_search で漢字コード 1 2022/09/06 17:32
- Gmail SPFレコードとDNSサーバーについて、gmailを設定できるかどうか 2 2023/06/10 23:55
- Outlook(アウトルック) Windows11にしてからOutlook2019がすぐに固まってしまう件に関して。 2 2023/01/21 11:52
- その他(メールソフト・メールサービス) サンダーバードメール送信について パソコンのサンダーバードから携帯メールにpdfの書類を送信しました 1 2022/08/11 07:15
- その他(メールソフト・メールサービス) メールサーバーは「PC側がメールをDL済みか否か?」を何を以て感知するのか? 2 2022/12/20 14:56
- UNIX・Linux iptablesを設定するとメール送信処理が遅くなる!? 6 2022/06/07 01:11
- サーバー 接続・ログインはできているのにメールが送信できない 2 2022/06/27 15:03
- サーバー メールサーバーについて詳しい方、メールサーバーの管理業務経験のある方、教えてください。 3 2022/11/12 18:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラム言語について。
-
VBAでパワーシェルを実行したい...
-
C#とC++について。
-
CLispのloop内の挙動について
-
interface 2021年5月号 P46
-
VBA 電話番号の正規表現について
-
Windowsのアプリ開発ってなんの...
-
プログラミングのPythonのnoteb...
-
vba クリップボードクリアにつ...
-
ImageMagickでgif画像の一部が...
-
ExcelVBAでFormulaR1C1を列範囲...
-
pythonにてseleniumを使うも、...
-
ホワイトハッカー
-
小学1年生の子です。塾に行かせ...
-
pythonで複数画像からgifを作る...
-
ハッシュテーブル(連想配列)が...
-
httpリクエストの送り元の特定
-
楽しくて最高のプログラミング...
-
プログラミング
-
家庭のパソコンで Python の 環...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラミング
-
小学1年生の子です。塾に行かせ...
-
vba クリップボードクリアにつ...
-
プログラマーと学歴の関係性に...
-
Webサイト内に埋め込んだmp4動...
-
正規表現で複数マッチ条件で悩...
-
windowsでテキストファイルの各...
-
楽しくて最高のプログラミング...
-
プログラミング ソースコード
-
Pythonって何を意識した言語な...
-
プログラミングを教えたいです...
-
pythonで複数画像からgifを作る...
-
pythonにてseleniumを使うも、...
-
Pythonでgif画像が上手く作れない
-
Google ColaboでGUI作成
-
テキストファイルのファイル名...
-
プログラミング、アーキテクチ...
-
そのまま使っただけなのに・・...
-
このURLで広告を出しているのは...
-
chatGPTで次々と質問をしていく...
おすすめ情報