Měl bych následující dva dotazy k funkci mail() v php:
1. Pořádáme jednou ročně akci, při níž jsou účastníkům přidělována startovní pořadová čísla. Vzhledem k tomu, že jich bývá něco kolem 50 až 70 a je potřeba tyto informovat pomocí e-mailu, není příliš rozumné tyto rozesílat ručně, což jsem doposud řešil pomocí skriptu v PHP, který podle seznamu tyto rozeslal. Jestliže však je nyní omezení na 10 mailů na hodinu, nebylo by toto možné (nemám totiž stálý přístup k internetu a být u někoho nebo v internetové kavárně 7 hodin nebo psát jednotlivé zprávy mi připadá poněkud nevhodné). Je tedy možná nějaká výjimka?
2. Souvisí částečně s předchozím. Vzhledem k mému nepravidelnému přístupu k internetu nemohu pravidelně kontrolovat poštu a proto jsem byl nucen udělat stránku, umožňující uživatelům vkládat příspěvky, vzhledem omezené kapacitě s kontrolou obsazeného místa a s tím sovisejícím automatickým zmenšováním obrázků, které však již nejsou v kvalitě vkládaných, které bych si z toho důvodu rád nechal pomocí skriptu posílat na soukromou schránku a po optimální ruční úpravě jimi pak nahradil ty automaticky upravené. Narazil jsem však na to. že když pošlu zprávu, větší než 199kB, tak tato nedojde nikdy celá (prostě se uřízne na cca 199kB a konec chybí).
Je toto způsobeno omezením funkce mail() v PHP (což jsem však nikde nenašel) nebo je to dáno nastavením na serveru? Dalo by se to obejít rozdělením souboru na více kusů a odesláním v jednotlivých zprávách, to však také není nejlepší řešení, neboť je tu výše uvedené omezení na 10 mailů za hodinu.
Dokázal by mi někdo (pokud možno z administrátorů) na tento problém odpovědět a pokud možno mi jej i pomoci vyřešit?
P.S.: Chyba se spamováním z formulářů se dá myslím řešit i pomocí poměrně jednoduchých filtrů, které prostě pustí jen data, neobsahující kritická klíčová slova. Řešení na internetu jsem už našel, adresu s řešením mohu poslat.
Postavit takový to script by bylo dosti obtížné, a možná by to nebylo v souladu s podmínkamy na WZ, ale myslím že by jsi měl zkusit jiný hosting třeba www.ic.cz
Ovšem nejsem si jist jestli to taky nemaj bloklý musíš to tam někde vyčíst....
Ad 1. jedním voláním funkce mail() lze poslat mejl více příjemncům (10), takže pro poslání 70ti mejlů stačí zavolat ji 7x.
http://www.webzdarma.cz/forum/read.php?f=6&i=29583&t=29142
To by sice bylo řešení při hromadném odesílání stejných zpráv, ale tady jde o to, že každá zpráva je jiná. Asi v tomto smyslu:
- Přihlásili jste se do akce blabla v místě x.
- Pro tuto akci vám bylo přiděleno pořadové číslo y.
- Těšíme se na vaši účast a přejeme příjemné zážitky.
- Pořadatelé
Položky x a y jsou pro každou zprávu individuální.
Aha. No ale i tak není třeba sedět sedm hodin v kavárně. Co třeba zkusit použít automatické spuštění skriptu pomocí cronu? Viz http://www.webcron.org/index.php?&lang=en.
Řešení pro případ 1 by to sice bylo, ale doposud jsem to řešil tak, že jsem vždy spustil skript a po jeho doběhnutí jsem ho hned vymazal, protože již nebyl potřeba. Přestože by se to dalo udělat tak, že by se ten skript sám po odeslání všech zpráv vymazal, znamenalo by to, nechat ho několik hodin bez kontroly na webu. Byl bych nerad, aby to třeba úmyslně nebo i nechtěně spouštěl někdo jiný. Výsledky by nebyly asi zrovna ideální...
pokud byste ho poustel cronem, staci zakazat pristup pres http a je to.