No.3ベストアンサー
- 回答日時:
サーバなんかだと、at は cron を使って、
プログラムを時間通りに実行できるんですけどねー。
基本的に、PerlやPHPは実行した時がすべてなので、
無理・・・なのかな?
(何かで特別な方法でできたような気がするけど。
うろ覚えなので忘れてください。)
特別な方法ではないのですが、HPのアクセス数が
多いなら、そのページに仕込んでおいて、
アクセスした時に
if(3時~4時&&一度){メール実行}って感じで、
送信することは可能と言えば、可能。
さらにこれを発展させれば、win&携帯で、仕込んだ
ページに手動なり、winのタスクなりでアクセスすれば、
メールは、送信できるけどあんまりスマートじゃない
ッスねー。
そもそも、メールって相手に届く時間が、すぐとは
かぎらないし。
最近でもチャットなんかでメール交換しても、20分
くらいかかる場合もあるし。
なかなか、難しいと思います。
No.4
- 回答日時:
こんにちは。
結論から言ってしまうと、皆さんが言うように、むずかしいと思います。
No1さんが言ったように、ApacheのようなWebサーバのモジュールとして、もしくはCGIとして動作するのを前提に作られたPHPは、そもそも永久に作動させるといった概念はないでしょう。もしくはすべきではないでしょう。(シェルスクリプトのように、Webサーバなしでも動作させることは出来ますが)
そして、デフォルトで30秒しか作動しないようになっています。
php.iniをいじれば、永遠に作動させることも出来ますがすべきではないと思います。PHPはApacheのようなWebサーバの力を借りて動いているわけですからWebサーバの設定と、いくつメールを出すために予約待ちしているかにもよりますが、仮に私が起動させているサーバで実現させると、数十通で誰もアクセスできなくなります。いわゆるブラウザの地球儀がぐるぐる回った状態。
こうした状態を悪意で起こすことを、DOS攻撃といいます。つまり、自分でDOS攻撃を発生させていることになります。
レンタルサーバで、やった場合は・・・。他の借りている人やレンタルサーバ会社にも迷惑がかかるので、場合によっては損害賠償が発生する可能性も・・・。
よって、PHPやWebサーバ以外の力を借りる必要があります。
その方法は皆さんが言っておられるように「corn」を使うか、そういう専用のサーバを用意するかどちらかになるわけですが、まず前提として自分でサーバを立ち上げているか、専用サーバを借りているかが最低条件になります。
簡単な方法としては、「cron」ですが「cron」に登録するメール送信シェル(Perlでもいいんですけど)スクリプトが必要になってきます。
この辺は、御自分でサーバを立ち上げているのでしたら、簡単にできると思いますよ。
がんばってください。
No.2
- 回答日時:
私の開発環境(Linux+Mysql)でしたら、、、
まず、送信先、題名、本文、時間、送信したかどうかのフラグ、、など条件をDBに格納
↓
時間などの条件にマッチした未送信のデータがDBに格納されているときのみメール送信するプログラムを作る。
↓
1時間おきにこのプログラムが起動するようにcrontabコマンドでセットする。
という感じでバリバリ稼動中です。
No.1
- 回答日時:
php が実行されるタイミングを見ればわかると思うのですが、これをスクリプトだけで実
現するのは無理ではないでしょうか?
何かしらのページを開いて、その中のフォームに入力するわけですよね?
その状態から php スクリプトに出来ることは
フォームの内容をメールサーバーに投げる。
フォームの内容をデータとして保存する。
の2つです。
実際にメールを投げるエージェントは、時間などは関係なく送信してしまうので
指定した時間まで待ってから送信、ということは無理です。
『保存されたフォームデータをチェックして、指定時刻であれば送信する』
というスクリプトを作って、このスクリプトをサーバーのシェルで定期的に実行する必要があります。
それでも、定時間サイクルでこのスクリプトを実行する「なにか」が必要になります。
# Linux で言うところのcron とか、Win のタスクスケジューラとか・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) Outlookでの時間指定送信機能について 2 2023/06/23 20:41
- UNIX・Linux redmineにメールを飛ばす方法 1 2022/09/13 22:02
- Outlook(アウトルック) Outlookのメール送信を取り消す方法 1 2022/11/17 13:10
- その他(メールソフト・メールサービス) outlookからの送信された件名が文字化けします 2 2023/04/18 14:29
- その他(メールソフト・メールサービス) 大阪市プレミアム付き商品券のweb申し込みで楽天モバイルのEメールだと返信メールが届かない 2 2022/09/19 17:08
- その他(メールソフト・メールサービス) 複数のメールを送信した順と受信した順が違うのは何故? 4 2023/02/22 09:58
- 中途・キャリア 社長面接日時設定について。 エン転職から応募した企業の一次面接が5月1日にありました 面接官は2名で 1 2023/05/09 20:35
- Outlook(アウトルック) Windows11にしてからOutlook2019がすぐに固まってしまう件に関して。 2 2023/01/21 11:52
- JavaScript 助けてください!スパムメールがとんでもなく大量に届きます。 3 2023/08/10 16:32
- UNIX・Linux Postfixでドコモメールに送信すると届くまで10分ぐらいかかる 6 2023/03/05 13:56
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Q)PHPでメール送信について
-
メールアドレスの存在確認はで...
-
ワードプレス、Contact Form 7...
-
存在しないメールアドレスかど...
-
時間を指定してメール送信
-
HPの更新をしたら自動でメール...
-
VB6にてメールを送信する方法
-
ホームページのフォームから送...
-
mb_send_mail関数により送信さ...
-
mail関数を使うと遅いので
-
コマンドプロンプトで添付ファ...
-
処理の早いメール送信プログラム
-
PHPのWARNINGをcatchするには
-
フォントの色を変えるには?
-
phpでPEAR::DBを使っているので...
-
別ファイルの変数を呼び出した...
-
onedrive にexcelファイルをア...
-
PHPのif文でその処理を途中で抜...
-
バッチを用いたフォルダの自動移動
-
現在位置より2つ上のディレク...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ワードプレス、Contact Form 7...
-
存在しないメールアドレスかど...
-
VB6にてメールを送信する方法
-
VBでメールを送る時のSMT...
-
submitボタンの二重送信について
-
コマンドプロンプトで添付ファ...
-
メールアドレスの存在確認はで...
-
【エクセルVBA】メール送信前に...
-
ループの中で mailItemObj.Disp...
-
【追加】ファイルを閉じてダイ...
-
ヒアドキュメントを利用してメ...
-
JavaMailでエラーメールの通知
-
送信日時を指定してメールを送...
-
ロリポップと、phpで自動の返信...
-
VB.NETでフリーメールアドレス...
-
★エクセルVBAでOutlookのメール...
-
SMTPサーバの指定なしでメ...
-
AccessのDoCmd.SendObjectについて
-
ブラウザの更新ボタン
-
HPの更新をしたら自動でメール...
おすすめ情報