2011-10-26 6 views
2

大量のメール送信を可能にするPHPアプリケーションの開発を依頼されました。これを行うために、MySQLデータベースから電子メールアドレスを取得し、それぞれをパーソナライズして送信するPHPスクリプトを用意しています。PHPスクリプトにより、そのユーザーのWebサイトにアクセスできない

これは、PHPスクリプトが実行されている間に(そして実行に数分かかることがある)、わずかな問題がありますが、ユーザーはアプリケーション上で何もできません。他の人はそれにアクセスすることができますが、問題のユーザーは電子メールが送信している間にアプリケーションの他のページを読み込むことはできません。

これに対処する方法はありますか、これはちょうど私たちが生きなければならないものですか?

+0

これはかなりのことではありませんが、おそらくポップアップがそのトリックですか? – toon81

+0

このアプリケーションは、共有または専用のホストで動作していますか?サーバー設定にアクセスできますか? IISまたはApache? – djdy

+0

タイムアウトしないことを確認する – Tules

答えて

2

ている現在、PHPのページを処理しているページへのオープンセッションがあります。このため、ユーザーは同じサイトの別のページを(同じセッションで)開くことができません。

これを処理する方法は、ユーザーがこのプロセスを開始しますが、ユーザーがアクセスしているスクリプトに電子メールを送信させないようにします。たとえば、データベース内の "todo"リストを作成し、cronjobでそれを処理させることができます。この方法では、ユーザーは引き続き他のページにアクセスできます。

1

長期実行スクリプトにセッションが適用されていないことを確認してください。

1

基本的にPHPスクリプトが実行され、ページがクライアントに送信されます。したがって、スクリプトが実行されている間に訪問者がページに固執しているのは正常です。

このようなタスクについては、cronジョブをご覧ください。

関連する問題