Starší komentáře ke článku: Vytváříme počítadlo ve Flashi 5

Zpět na článek | Úvodní stránka Interval.cz

Avatar

Autor komentáře: Leo

Datum vložení: 13.12.2001 0:43:03

Pocita to ovsem jenom pocet pristupu pro navstevniky, kteri maji podporu Flash5 ve svem prohlizeci. Leo

Avatar

Autor komentáře: Jan Holzäpfel

Datum vložení: 13.12.2001 8:38:43

Ahoj,
děkuji Ti za připomínku. Při jeho tvorbě jsem počítal s tím, že Flash dnes podporuje většina počítačů, i diky tomu, že stránky jsou čím dál tím častěji vytvořeny ve Flashi.
Pokud nebude počítadlo pracovat tak jak má, dochází ke zpoždění při načítání proměnných a proto se počet nemění, resp. je tam stále "0". Doporučuji Vám zvětšit si rozestupy mezi jednotlivými klíčovými snímky. Nyní jsou klíčové snímky na 1, 3, 5 a 10 frame. Zkuste je změnit na 1, 7, 13, 20. Přímo ve zdrojovém souboru (*.fla) uchopte myší jednotlivé frame a posunem je přemístěte na správná políčka.
Na mojem zkušebním serveru <B>(www.terms.cz/~holzapfel)</B> počítadlo fungovalo bez problémů v základním nastavení.

Avatar

Autor komentáře: Miroslav Kučera

Datum vložení: 13.12.2001 11:32:39

Me to pocitadlo, respektive ukazkovy priklad vubec nefunguje. Same nuly... :(

Avatar

Autor komentáře: Jan Holzäpfel

Datum vložení: 13.12.2001 12:06:06

Děkuji Ti za připomínku, ale domnívám se, že to souvisí s předchozím příspěvkem. Při přípravě článku a zdrojového souboru používám k testování jiný server než na kterém je Interval.cz umístěný. Proto doporučuji projít si postup z mojeho předchozího komentáře, kdy doporučuji jiné umístění klíčových snímků. Další problém může nastat při špatném nastavení Chmode textového souboru přímo na serveru.
Toto počítadlo jsem poskytl jinému webmasterovi na této adrese (www.hccb.cz), kde bez problémů také funguje.

Avatar

Autor komentáře:

Datum vložení: 18.6.2002 16:21:04

Avatar

Autor komentáře: Gobbet

Datum vložení: 13.12.2001 14:24:20

Řekl bych, že to fakt moc nefunguje. A to nejen na Intervalu. Díval jsem se jak <a href='http://www.hccb.cz' target='_blank'>http://www.hccb.cz</a>, kde počítadlo nefungovalo vůbec (samé nuly), tak i na <a href='http://www.terms.cz/~holzapfel' target='_blank'>http://www.terms.cz/~holzapfel</a>, kde začalo fungovat až po kliknutí ve Flash menu (pravé tl. myši) na položku Play.

Avatar

Autor komentáře: Pavel Simek

Datum vložení: 13.12.2001 22:02:08

Po dvou měsících jsem znovu zabloudil na Interval a co nevidím -- dokonalé deja vu. Opět Jan Holzäpfel, opět příklad s načítáním proměnných ze serveru a opět stejná nehorázná chyba! Jen tentokrát chybí tip na "zpomalovací smyčku". Vy opravdu netušíte, jak zajistit, aby skript počítal s libovolně dlouhou prodlevou mezi požadavkem na proměnné a jejich obdržením od serveru? Člověče, běžte od toho! Vzkaz pro šéfredaktora: Užitečnost článku = -1. Doporučuji vynásobit tímto koeficientem autorský honorář.

Avatar

Autor komentáře: Jan Holzäpfel

Datum vložení: 14.12.2001 8:40:29

Vážený pane Šimek,
vážím si každého příspěvku do diskuze. Vím, že jsme si už jednou na toto téma dopisovali. Když jsem si připravoval zdrojové příklady do článku, pracuji na serveru, který je u nás na firmě. Protože prodlevy jsou v tom případě minimální, nedošlo mi, abych tam vložil preloader (což byl i stejný příklad v článku ohledně svátků!). A každý z nás je chybující! Učinil jsem už patřičné kroky ke zjednání nápravy a věřte, že tyto dva články už mě přinutí na preloadery pamatovat!

Avatar

Autor komentáře: Jan Holzäpfel

Datum vložení: 14.12.2001 10:07:06

Na základě upozornění, za což ještě jednou děkuji všem zúčastněným v diskuzi, jsem vložil preloader do zdrojového souboru, abych zajistil správné načítání proměnných a eliminoval prodlevy při načítání proměnných ze serveru. Tyto opravy jsem zaslal šéfredaktorovi a budou dostupné v zazipovaném stavu v pátek v odpoledních hodinách včetně poopraveného článku. Pro ty netrpělivé jednotlivé změny v rychlosti předešlu. Změny jsou tučně zvýrazněny:

v PHP souboru:
do řádku $New = "Pocet=$Newpocet<B>&kontrola=1</B>";

v TXT souboru:
pocet=0<B>&kontrola=1</B>

v FLA souboru:
1.frame
loadVariablesNum ("pocitadlo.php?ran="+random(999), 0);
2.frame
loadVariablesNum ("pocitadlo.txt?ran="+random(999), 0);
3.frame<B>
if (kontrola=="1") {
gotoAndPlay (4);
} else {
gotoAndPlay (2);
}</B>
4.frame
pocet = Number (pocet);
ukaz = "";
poc = pocet;
for (i=6; i>(poc.toString().length); i--) {
ukaz = "0"+ukaz;
}
ukaz = ukaz+pocet;
5.frame
stop;

Grafickou část počítadla (Layer 1) si můžete přemístit na 4 a 5 fr.

Avatar

Autor komentáře: Pavel Simek

Datum vložení: 14.12.2001 13:11:28

Ehm... zas to není ono. :)
1) Čekací smyčku jste dal pro čtení (pocitadlo.txt), ale už ne pro zápis (pocitadlo.php). Pokud vám to funguje, tak to je opět jen náhoda.
2) Tím, že čekací smyčku směřujete na snímek č. 2, se úspěšně snažíte zahltit server. Přece dokud neobdržíme výsledek, je nutné pouze ČEKAT, nikoliv znovu a znovu volat server.
Kromě toho by se tomu dalo vytknout mnoho dalšího:
1) Proč používáte dvě volání serveru, když by bylo možné jedním voláním řešit jak čtení, tak i zápis?
2) Proč si zavádíte proměnnou kontrola, když samotná proměnná pocet může sloužit pro kontrolu?
3) Tomuto mechanismu se neříká preloader.
4) Flash má na tento mechanismus speciální elegantní prostředky, které by bylo vhodné aspoň zmínit.
5) Proč pro nastavování číslic používáte událost onClipEvent? Chcete kromě serveru zahltit i klienta?

Avatar

Autor komentáře: Pavel Simek

Datum vložení: 14.12.2001 13:15:14

U té poslední připomínky mělo být samozřejmě "enterFrame".

Avatar

Autor komentáře: Jan Holzäpfel

Datum vložení: 14.12.2001 14:28:51

S výše uvedenými poznámkami nemůžu jinak než souhlasit. Pro nezasvěcené bych ještě jednou prošel vaše připomínky:
1) tato akce mi funguje a není to náhoda, ale tím, že pracuji na stejném serveru a prodlevy mezi jednotlivými voláními jsou takřka minimální. Proto souhlasím s umístěním smyčky pro kontrolu zápisu.
2) souhlasím, mohl jsem vložit jeden prázdný snímek, za akci volající server, a odskoky směřovat na něj.
....
1) To byla ta další možnost, přiznávám, že jednodušší. Ve Vašem případě platí to, že první myšlenka nemusí být ta nejlepší.
2) viz předchozí bod
3) Napadlo mě to jako první myšlenka
4) Pro náš případ je nejvhodnější příkaz OnClipEvent(data)
5) Souhlasím, že je vhodnější OnClipEvent(load)
Doufám, že si čtenář z toho vybere jenom to správné!

Avatar

Autor komentáře: lukas

Datum vložení: 28.7.2003 13:16:21

Muzete mi poradit, jak mam teda udelat pocitadlo ve flashi.

Avatar

Autor komentáře: lukas

Datum vložení: 28.7.2003 13:47:16

pocitadlo mi nefunguje - okamzite mi tam naskoci same devitky

Zpět na článek | Úvodní stránka Interval.cz