Autor Zpráva
et9
Profil
Dobrý den,
Mám tabulku ve které jsou emaily. Ty pomocí while vypisuji a rovnou na ně odesílám email. Jenže je to pomalé to načítání stránky a někdy se neodešlou všechny emaily. Mno a já bych potřeboval udělat takovej ukazatel v JS který email se právě odesílá. Nemohu na přijít jak na to, mohl byste mě někdo nasmšrovat?
t4nn3r
Profil
Že script nedoběhne je nastavením execution time. pokud používáte php tak tuto proměnou najdete v php.ini . Jinak takovouto aplikaci bych řešil asi pomocí ajaxu.

Uložil bych seznam adresátů do pole v js a potom z tohoto pole postupně volal AJAXovy script který bude odesílat ty emaily. V té funkci která bude volat ajax můžete pomocí DOM měnit obsah nejakého elementu na stránce a dát mu tam email adresu která se zrovna posílá..
et9
Profil
Mno a to je ten problém, že já ten seznam adresátů mám v db a bohužel je jich tam neco přes 700 000 registrovaných adresátů takže to chvilku trvá než se to vypíše a já potřebuji u tohoto procesu ten progress bar
NEXT: Ještě dodatek nepotřebuji přímo progress bar kde se mění šířka divu stačí mi kolikátý záznam z db se vypisuje
peta
Profil
et9: RSS je slovo, ktere hledas.
Odeslani vice nez 100 mailu za den je povazovano za spam a dany server by te mohl trvale zablokovat.

Program, ktery se udela rozumne, funguje.
Mas 700.000, z sql limitem vytahnes 20, odesles mail, ajaxu vratis, ze vse probelhlo ok a ajax vola dalsi odesilani.

"Ty pomocí while vypisuji a rovnou na ně odesílám email."
To je ten problem. Nastav si do scriptu spravne ob_flushe nebo vypisuj jednu velkou promennou. Vetsina zacatecniku pouziva priklady ve skole, kde maji cyklus {nacti z sql, posli mail, vypis na obrazovku}. Kazda z tech operaci trva nejaky cas. Vypsani na obrazovku vyvola posilani dat. Aspon tak je nastaven server.
Cili tvuj program vykonava nekolik casove narocnych operaci a pak jeste ceka na odezvu od serveru, zda byla data spravne odeslana. Proto se vypis dela po vice radcich najednou zvlast cyklem, podminkou, treba.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0