Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak opóźnić wysłanie maila??
Forum PHP.pl > Forum > PHP
rebe
Problem jest tego typu:
Jest sobie formularz, który zostaje wypełniony przez użytkownika i wysłany. Problem polega na tym, że pierwszy mail dochodzi od razu do adresata a drugi mail przychodzi po określonym czasie, od momentu wysłania tego pierwszego. Jak to zrobić? Sam php chyba nie wystarczy. Jeżeli ktoś zna odpowiedź PLIZ - niech da znać!!
Liko
Cron
rebe
Czy mógłby mi ktoś wytłumaczyć jak Laikowi o co loto z tym Cron-em?
Paul
rebe: Szukaj na forum..
rebe
Szukałem na forum i to co znalazłem nie mówi mi absolutnie nic! HELP!!
bamboos
Możesz to zrobić wykożystując funkcje:
[manual:efeec370a1]set_time_limit[/manual:efeec370a1]
[manual:efeec370a1]ignore_user_abort[/manual:efeec370a1]
[manual:efeec370a1]connection_aborted[/manual:efeec370a1]
[manual:efeec370a1]flush[/manual:efeec370a1]
[manual:efeec370a1]sleep[/manual:efeec370a1]
no i [manual:efeec370a1]time[/manual:efeec370a1] żeby sprawdzić czy już należy wysłać 2 maila.
rebe
Nie wiem czy już o tym mówiłem ale ten drugi mail ma dochodzić po 48 godzinach. Mało tego jeżeli ktoś wyśle tego maila w piątek o 17 to licznik ma nie uwzględniać weekendów. Czyli mail dochodzi dopiero we wtorek o 17. POMOCY!!!
pio
powala na uruchamianie zadan w okreslonym czasie
to narzedzie typowo linuxowe mozna by go porownac do windowsowego schedulera ale ma wieksze mozliwosci jezeli korzystasz z windy jest tez wersja crona dla windows, trzeba poszukac
jak go juz znajdziesz i zainstalujesz trzeba by walnac skrypcik ktory bedzie wysylal te opznione maile a crona ustawic by wykonywal ten skrypt np. codziennie o 22 albo co 6 godz
zalezy od ciebie
mozna sciagnac tutaj http://www.nncron.ru/download.shtml
rebe
Jest jeszcze jeden, najważniejszy problem. Mam dostęp tylko do konta FTP, no i poza tym do bazy danych. Także chyba nie ma szans na tego typu zabiegi z Cronem. sad.gif
Liko
To raczej nie masz szans zeby zrobić coś takiego co chcesz. Chyba że będziesz wchodził na określoną stronę i wtedy bedzie wysyłać maile jeżli mineły 48 godzin od zgłoszenia. Ale jak widzisz jest to nie efektywne.
boloo77
Możesz spróbować coś takiego:
Po wypełnieniu formularza przez użytkownika idzie do niego od razu mail, Jednocześnie gdzieś (baza danych) zapisujesz dane potrzebne do określenia kiedy i do kogo ma być wysłany ponownie mail. Przed zapisem tej daty możesz sprawdzać czy nie ma weekendu (ew. święta), jeśli jest wtedy przesuwasz date wysłania o odpowiednią liczbę dni - i taką date ponownego wysłania zapisujesz.

No i masz teraz w bazie zapisane do kogo i kiedy ma być wysłany mail.
Zostało napisanie kilku linii np. na głównej stronie (która jest najczęściej otwierana), lub w osobnym pliku i includowania go do dowolnej strony. A będzie tam sprawdzanie czy nie minął już czas wysłania ponownego maila do jakiegoś użytkownika, jeśli minął to wysyłasz maila i usuwasz z bazy rekord odnoszący się do niego.

Mam nadzieje że wiesz o co chodzi i nie zamieszałem za bardzo...

Oczywiście taki sposób rozwiązania nie jest idealny ale jeśli masz odpowiednią oglądalność powinien spełnić swoje zadanie.
rebe
Myślałem już o tym i chyba na tym poprzestanę. Najgorsze jest to że nie mam pewności że ta strona będzie często odwiedzana. Dzięki wszystkim za pomoc. Gdyby komuś nasunął się jeszcze jakiś pomysł, to z góry dzięulski!!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.