Hirdetés
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- sh4d0w: Kalózkodás. Kalózkodás?
- gban: Ingyen kellene, de tegnapra
- sziku69: Szólánc.
- LordAthis: RETRÓnia - RETRÓ Mánia - Úton van hozzám egy csodás történelmi darab!
- Lalikiraly: Kinek milyen setupja van?
- sh4d0w: Árnyékos sarok
- Pajac: A csodálatos mandarin
- eBay-es kütyük kis pénzért
Új hozzászólás Aktív témák
-
martonx
veterán
válasz
Speeedfire
#223
üzenetére
mondjuk én adatbázis buzi vagyok, én beletenném egy táblába az email címeket, melléjük pedig egy oszlopban jelezném, hogy elküldtük-e.
A js csak annyit csinálna, hogy ajax-al meghívja a kuld.php-t, ami egyenként elkezdi küldeni a leveleket, egyúttal egy sessionbe beteszi a PHP, hogy éppen hol tart a küldéssel.Az ajax hívás kezdetén pedig indítanék egy setinterval-t, ami mondjuk x másodpercenként lekérdezi a PHP által írt session-t, és megjeleníti a sessionben lévő darabszámot.
Így szépen fog látszódni, hogy hány darabnál tartasz, és erre a visszakapott darabszámra bármilyen jquery-s progressbar-t játszva rá lehet húzni.
Mondjuk mindez nem oldja meg a php timeout-ot. Ha valami rendesebb tárhelyed van (vagy van ráhatásod a php.ini-re), akkor azért a php-d akár több 10 percig is futhat.
-
jeges
senior tag
válasz
Speeedfire
#223
üzenetére
ezt úgy lehetne megoldani, hogy a php-kód minden csomag elküldése után küld egy jelet a kliensnek (ez a "jel" aztán megjelenik a kliens valami div-jében). a kliensen mondjuk másodpercenként lekérdezed, hogy mi van a php-kód kimenetén, és ha változás van, jelzed a felhasználó felé, ha meg nincs, akkor valami timeout (mondjuk 15 másodperc) után leállítod a programot.
setInterval() fv alkalmas kliens oldalon az ütemezett lekérdezésrea kódok felépítése valahogy így nézne ki:
js:
1) szöveg küldése a php-nak, php-kód indítása - ez az ajax hívás
2) felület tiltás (modális ablak vagy fedőréteg)
3) ütemezett lekérdezés, mi van a php-kód kimeneti div-jében
4) a. ha a kimenet változik, elküldött levelek újraszámolása, frissítés a felhasználó felé
4) b. ha elértük a 3000-et (100%-ot), örülünk és leállítjuk a kódot
4) c. ha nem értük el a 100%-ot és timeouton túl nincs változás, leállítjuk a futást és megkérjük a júzert, hogy később próbálja újra vagy vegye fel a kapcsolatot a helpdesk-kelphp:
1) a js hívására a kapott szöveg alapján tömbönként elkezdjük kiküldeni a leveleket
2) minden elküldött tömböt tárolunk adattáblában, és minden elküldött tömb után küldünk jelet a kliensnek az elküldött levelek vagy tömbök számáról
3) a. ha végeztünk, leállunk (valami spec "vége" jel a kliensnek)
3) b. timeout - ez asszem automatikus szerver-oldalon (legalábbis php/apache esetében emlékeim szerint van valami automatizmus, ami leállítja a végtelen ciklusba került kódot), de őszintén megmondom, nem tudom most fejből.
Új hozzászólás Aktív témák
- Autós topik
- Hitelkártyák használata, hitelkártya visszatérítés
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Napelem
- Képernyős trükkök növelik a notebookok üzemidejét
- Hálózati / IP kamera
- Hogy mi van? A TikTok lett az Xbox ellenfele?
- Arc Raiders
- Minőségi ugrást hozhat a One új médiaboxa?
- SSD kibeszélő
- További aktív témák...
- Sapphire Pulse 6800XT 16Gb Kitűnő! Ingyen posta!
- Cisco Telepresence MX300 G2 - 55" Interaktiv Monitor - Konferencia rendszer
- 70" Interkativ Érintőképernyős Monitor / All In one PC - InFocus INF7021A Multi Touch
- Microsoft Surface Hub (v1) 1597 - 55" All in One PC - Érintőképernyős monitor
- Dell PowerSwitch N2048 48 Port Gigabit Ethernet 2 Port 10Gb SFP+ Switch
- MÉG OLCSÓBB 10.21. !!! Új elekrtomos rollerek 2/3 áron és e-bike dobozban, 1 év garanciával:
- ÚJ HP ProBook 445 G11 - 14" WUXGA - Ryzen 5 7535U - 16GB - 256GB - MAGYAR - 2+ év garancia
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 16/32/64GB RAM RX 9060XT 16GB GAMER PC termékbeszámítással
- Dell latitude, precision, xps, magyar világítós billentyűzetek eladóak
- HP 65W töltő eladó
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Promenade Publishing House Kft.
Város: Budapest

