| | |
| Stránka: 1 z 1
| [ Príspevkov: 21 ] | |
Autor | Správa |
---|
Registrovaný: 31.05.09 Prihlásený: 02.06.17 Príspevky: 562 Témy: 37 Bydlisko: BegyBen |
Zdravim,
Mam chat robeny cez iframe, ktory sa metou refreshuje kazdych x sekund. V IEčku som spozoroval pri refreshi zvuk takeho tuknutia/kliknutia a potreboval by som sa toho zbavit, je to mozne?
Dakujem
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 Bydlisko: Brno | Napísal Ďuri: 23.07.2009 19:25 | |
|
Nie je.
|
|
Registrovaný: 31.05.09 Prihlásený: 02.06.17 Príspevky: 562 Témy: 37 Bydlisko: BegyBen | Napísal autor témy Snacker: 23.07.2009 19:28 | |
|
Coo ? Musi predsa nejaky sposob existovat, napr. na Pokeci som prave spozoroval ze pri refreshi im nic netukne
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 Bydlisko: Brno | Napísal Ďuri: 23.07.2009 19:30 | |
|
A stopercentne je pokec rieseny cez iframe? neviem, nechodim tam, ale tipol by som to na Ajax. Pokial si budes Ajaxom pravidelne requestovat obsah <div>u, ktory sa ma refreshovat, nebude ti nic tukat, lebo vlastne sa nic nerefreshuje, iba to tak vyzera.
|
|
Registrovaný: 31.05.09 Prihlásený: 02.06.17 Príspevky: 562 Témy: 37 Bydlisko: BegyBen | Napísal autor témy Snacker: 23.07.2009 19:42 | |
|
Citácia: A stopercentne je pokec rieseny cez iframe? neviem, nechodim tam,
Ja, len ked chcem vediet jak to maju riesene
Aha, mas pravdu prave som to pozeral cez firebuga, maju to riesene cez div. Raz som to pozeral pomylila ma jedna vec bo jeden iframe tam mali a prisudil som ho chatu. Fuha, tam to musim cele prerobit, no Ajax neovladam,budem si musiet nastudovat asi problematiku
|
|
Registrovaný: 09.03.08 Prihlásený: 22.12.10 Príspevky: 356 Témy: 85 Bydlisko: Topoľčany |
tento refresh samostatneho divka funguje: Kód: var xmlhttp = false ;
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') { try { xmlhttp = new XMLHttpRequest (); } catch (e) { xmlhttp = false} }
function myXMLHttpRequest () { var xmlhttplocal; try { xmlhttplocal = new ActiveXObject ("Msxml2.XMLHTTP")} catch (e) { try { xmlhttplocal = new ActiveXObject ("Microsoft.XMLHTTP")} catch (E) { xmlhttplocal = false; } }
if (!xmlhttplocal && typeof XMLHttpRequest != 'undefined') { try { var xmlhttplocal = new XMLHttpRequest (); } catch (e) { var xmlhttplocal = false; } } return (xmlhttplocal); }
var mnmxmlhttp = Array (); var mnmString = Array (); var mnmPrevColor = Array (); var responsestring = Array (); var myxmlhttp = Array (); var responseString = new String;
var i=0; var ii = 0;
function ajax_update() {
url = "ajax.php"; target2 = document.getElementById ('content'); ii = i++;
var content = "i=" + ii ;
mnmxmlhttp = new myXMLHttpRequest (); if (mnmxmlhttp) { mnmxmlhttp.open ("POST", url, true); mnmxmlhttp.setRequestHeader ('Content-Type', 'application/x-www-form-urlencoded');
mnmxmlhttp.send (content); errormatch = new RegExp ("^ERROR:");
target2 = document.getElementById ('content');
mnmxmlhttp.onreadystatechange = function () { if (mnmxmlhttp.readyState == 4) { mnmString = mnmxmlhttp.responseText; if (mnmString.match (errormatch)) { mnmString = mnmString.substring (6, mnmString.length); target = document.getElementById ('content'); target2.innerHTML = mnmString; } else { target = document.getElementById ('content'); target2.innerHTML = mnmString;
} } } }
setTimeout('ajax_update()', 2000); //refresh IDčka každé 2s.
}
Skúška:(ajax.php) <?php
echo "<PRE>";
print_r($_POST);
echo time();
?>
<body onload= "ajax_update();"> <div id="content">Tvoj obsah ...</div> </body>
_________________ FCSpartak Trnava |
|
Registrovaný: 31.05.09 Prihlásený: 02.06.17 Príspevky: 562 Témy: 37 Bydlisko: BegyBen | Napísal autor témy Snacker: 23.07.2009 21:46 | |
|
Diki, pekny funkcny uz nejaku tu chvilu hladam nieco funkcne. Prosim ta ako je to s funknostou v IE6 a pod??. Skusal som to v len novych verziach prehliadacoch Safari, FF, Opera, IE8 a je to funkcne
|
|
Registrovaný: 09.03.08 Prihlásený: 22.12.10 Príspevky: 356 Témy: 85 Bydlisko: Topoľčany |
no v IE6 a nizsie neviem ako to funguje, musim to pozriet
_________________ FCSpartak Trnava |
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 Bydlisko: Brno | Napísal Ďuri: 24.07.2009 9:10 | |
|
Stare verzie Explorera nepodporuju priamo objekt XMLHttpRequest, ale ide to cez ActiveX. Vsetko to je v tom skripte vyssie osetrene, takze v IE5+ by to malo ist.
Ale ten kod vyssie sa mi zda velmi zlozity, prepchaty zbytocnymi premennymi a podmienkami. Odporucam pozriet tutorial na w3schools.com, aby si s tym nemal problem v buducnosti.
|
|
Registrovaný: 31.05.09 Prihlásený: 02.06.17 Príspevky: 562 Témy: 37 Bydlisko: BegyBen | Napísal autor témy Snacker: 24.07.2009 16:01 | |
|
Urcite to prestudujem Prave mi prisla aj kniha mistr. v ajaxe tak sa teraz trosku vrhnem do JS. Uz som to prerobil na <div> jedno je ale iste, ze iframe = vecny problem ...
Este som sa chcel jednu vec spytat aj ked uz obchadza temu,
Mam to rozdelene na tri casti
1.room.php -> tam je form kde prises spravu a odosiela sa send.php a zaroven je tam <div> ktory sa refresuje (messages.php)
2.spominany send.php -> uklada spravu do MySQL a potom headerom do room.php
3. a messages.php -> to je vlastne ten div co sa refreshuje (vyber z databazy a echo)
No mam problem s tym, ze ked odoslem spravu tak to tak preblikne a ja by som potreboval aby toprebehlo tak rychlo, ze nic nestihne prebliknut, vsetky algoritmy som max. doladil no stale je to blikne. Nemate nejake tipy?
|
|
Registrovaný: 26.12.06 Prihlásený: 16.11.19 Príspevky: 3971 Témy: 181 Bydlisko: Nitra / Bra... | Napísal emer: 24.07.2009 17:05 | |
|
Snacker, v jednej téme som ti dával návod na to upozorňovanie, keď už používaš jQuery, použi to aj tu. vyhňeš sa dlhým a zbytočným kódom
_________________ Sorry za prelkepy |
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 Bydlisko: Brno | Napísal Ďuri: 24.07.2009 17:28 | |
|
Ano, ak pouzivas jQuery, pouzi to aj na pracu s Ajaxom. Inak odporucam jQuery nepouzivat, vyhnes sa dlhemu a zbytocnemu kodu
Snacker - mohol by si dat odkaz na zivu ukazku?
|
|
Registrovaný: 31.05.09 Prihlásený: 02.06.17 Príspevky: 562 Témy: 37 Bydlisko: BegyBen | Napísal autor témy Snacker: 24.07.2009 19:19 | |
|
Citácia: Ano, ak pouzivas jQuery, pouzi to aj na pracu s Ajaxom. Na jeden efekt som ju chcel pouzit ale mam tam mierne komplikacie tak neviem. Citácia: Inak odporucam jQuery nepouzivat, vyhnes sa dlhemu a zbytocnemu kodu Skor mi ide o to dobre pochopit JS -> AJAX a robit si vsetko na mieru bez zbytocneho kodu Citácia: Snacker - mohol by si dat odkaz na zivu ukazku?
Problem je v tom, ze moj web este nema dostatocne zabezpecenie tak by som ho este moc nechcel publikovat
Je pravda, ze tam mam dost funkcii, no su potrebne ako napr. ochranenie proti tapetovaniu, jedna sprava max za x casu, ochr. proti vulgarizmom... skusim asi tento kod nahrat iba jednoduchym insertom bez ochrany a skontrolujem rychlost, tak budem asi mudrejsi
//skusal som, takze v tom chyba nie je
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 Bydlisko: Brno | Napísal Ďuri: 24.07.2009 20:00 | |
|
Snacker píše: Skor mi ide o to dobre pochopit JS -> AJAX a robit si vsetko na mieru bez zbytocneho kodu Tak potom jQuery nepouzivaj. Fakt si pozri nejaky tutorial, napriklad na w3schools a pokus sa tomu rozumiet. Snacker píše: Problem je v tom, ze moj web este nema dostatocne zabezpecenie tak by som ho este moc nechcel publikovat Mne je to jedno, ale preblikavanie, ake popisujes ty, som este nevidel. Bude treba tvoj kod nejak upravit, lenze si sa ho sem nenamahal dat
|
|
Registrovaný: 26.07.06 Prihlásený: 20.03.16 Príspevky: 1378 Témy: 90 Bydlisko: Slovakia-Ko... | Napísal kmsa: 24.07.2009 22:37 | |
|
trochu asi odbocim ale niesom isty ci neustali vyber z databazy na plochu je dobry napad.
mne pride rychlejsie ukladat do databazy a medzi tym hodinove zaznami do suborou z ktorych sa budu hadzat na plochu tvojho chatu.
niesom isty ci to je rychlejsie ale jednoznacne mi pride nie velmi efektivne vsetko hadzat a vyberat z databazy
_________________ CPU: Intel E7200 momentalne default + freezer 7 pro | MB: Gigabyte GA-P35-DS3 rev. 2.0 F14 | RAM: A-DATA 4x1GB EE Vitesta | VGA: ATI Radeon HD4850 Sapphire Dual Slot | Monitor: BenQ E2200HD+17CTX | HDD: WD 3200AAKS + Maxtor 6Y080M0 80GB SATAII + 120GB ATA Barracuda | PSU: Corsair VX450W | Windows 7 Ultimate Sk | REPRO: Logitech X-210
+
IPhone 3GS JB 3.1.3 (new BR)
múdry sa postara o seba ale ešte múdrejši sa postara aj o druhých |
|
Registrovaný: 31.05.09 Prihlásený: 02.06.17 Príspevky: 562 Témy: 37 Bydlisko: BegyBen | Napísal autor témy Snacker: 24.07.2009 23:03 | |
|
urcite je to zaujimave riesenie a pravdepodobne by to vyriesilo aj moj problem, neviem no , preba napisat asi nejaky kod a porovnat rychlost, bezpecnost a efektivitu
|
|
Registrovaný: 25.11.07 Prihlásený: 14.01.24 Príspevky: 48 Témy: 26 | Napísal jurov: 13.09.2009 3:38 | |
|
Čaute, ten kód od kaidžasa mi obnovuje div v poriadku.
Len namiesto znakov s diakritikou vypisuje kocky, prosím poraďte
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 Bydlisko: Brno | Napísal Ďuri: 13.09.2009 8:35 | |
|
Najprv skontroluj, ci ti normalny text (to znamena text, ktory nevyberas Ajaxom) zobrazuje v poriadku, ak nie, nastav kodovanie v <meta>. Potom skontroluj, ci ti text, ktory vyberas z DB vypisuje v poriadku, ak nie, mas zle nastavene kodovanie DB. Inak bude problem niekde "na trase", skus nastavit v tom subore, z ktoreho tahas obsah, kodovanie pomocou HTTP hlavicky.
Najlepsie bude, ak sem das vsetky kody, teraz len tipujem.
|
|
Registrovaný: 25.11.07 Prihlásený: 14.01.24 Príspevky: 48 Témy: 26 | Napísal jurov: 13.09.2009 13:21 | |
|
Sory, nevyjadril som sa presne - robí to iba s textom, ktorý vyťahuje zo súboru. Keď som použil charset=utf-8, nič sa nezmenilo.
index.php
Kód: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1250" /> <script language="JavaScript" src="http://localhost/sbm/data/xmlhttp.js" type="text/javascript"></script> </head> <body onload="ajax_update();"> ... <div id="content">Loading....</div> ... </body> </html> data/xmlhttp.js Kód: var xmlhttp = false;
if (!xmlhttp && typeof XMLHttpRequest != 'undefined') { try { xmlhttp = new XMLHttpRequest (); } catch (e) { xmlhttp = false } }
function myXMLHttpRequest () { var xmlhttplocal; try { xmlhttplocal = new ActiveXObject ("Msxml2.XMLHTTP") } catch (e) { try { xmlhttplocal = new ActiveXObject ("Microsoft.XMLHTTP") } catch (E) { xmlhttplocal = false; } } if (!xmlhttplocal && typeof XMLHttpRequest != 'undefined') { try { var xmlhttplocal = new XMLHttpRequest (); } catch (e) { var xmlhttplocal = false; } } return (xmlhttplocal); }
var mnmxmlhttp = Array (); var mnmString = Array (); var mnmPrevColor = Array (); var responsestring = Array (); var myxmlhttp = Array (); var responseString = new String;
var i=0; var ii = 0;
function ajax_update () { url = "data/onlinevypis.php"; target2 = document.getElementById ('content'); ii = i++; var content = "i=" + ii; mnmxmlhttp = new myXMLHttpRequest (); if (mnmxmlhttp) { mnmxmlhttp.open ("POST", url, true); mnmxmlhttp.setRequestHeader ('Content-Type','application/x-www-form-urlencoded'); mnmxmlhttp.send (content); errormatch = new RegExp ("^ERROR:"); target2 = document.getElementById ('content'); mnmxmlhttp.onreadystatechange = function () { if (mnmxmlhttp.readyState == 4) { mnmString = mnmxmlhttp.responseText; if (mnmString.match (errormatch)) { mnmString = mnmString.substring (6, mnmString.length); target = document.getElementById ('content'); target2.innerHTML = mnmString; } else { target = document.getElementById ('content'); target2.innerHTML = mnmString; } } } } setTimeout('ajax_update()', 1000); } data/onlinevypis.php Kód: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1250" /> </head> <body> <div id="online"> ľščťžýáíéóúäôň <?php echo Date("U"); ?> </div> </body> </html>
|
|
Registrovaný: 11.08.07 Príspevky: 4088 Témy: 34 Bydlisko: Brno | Napísal Ďuri: 13.09.2009 13:58 | |
|
Na zaciatok toho onlinevypis.php skus dat
Kód: <?php header('content-type: text/html; charset=Windows-1250'); ?> Mimochodom, naco v tom onlinevypis.php mas !doctype, <html> a ine zbytocnosti? Uplne by stacilo, keby si tam nechal to ľščťžýáíéóúäôň.
|
|
Registrovaný: 25.11.07 Prihlásený: 14.01.24 Príspevky: 48 Témy: 26 | Napísal jurov: 13.09.2009 21:02 | |
|
Je to v poriadku, ďakujem
|
|
| Stránka: 1 z 1
| [ Príspevkov: 21 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| SPACE to refresh (medzerník pre refresh) v JavaScript, VBScript, Ajax | 4 | 471 | 10.07.2011 16:48 juho | | HDD SeaG SATA - spravý zvuk - ťuk v Pevné disky a radiče | 2 | 173 | 02.12.2012 22:21 Eris14 | | Ako Smart váhy merajú tuk, svalstvo atď? v Zdravie, medicína, choroby a liečenie | 1 | 416 | 04.06.2023 15:10 Max64 | | REFRESH v JavaScript, VBScript, Ajax | 5 | 543 | 23.10.2009 15:10 Draex | | AJAX refresh v JavaScript, VBScript, Ajax | 0 | 1048 | 19.10.2008 11:20 max-m | | form refresh v HTML, XHTML, XML, CSS | 9 | 612 | 15.09.2008 14:35 Tominator | | Iframe refresh v HTML, XHTML, XML, CSS | 5 | 639 | 05.06.2008 22:16 p360t | | refresh stranky v PHP, ASP | 9 | 849 | 11.08.2009 11:36 kmsa | | Refresh rate v Monitory, televízory a projektory | 4 | 629 | 19.02.2009 17:19 piskvorko | | Refresh DIV v JavaScript, VBScript, Ajax | 2 | 441 | 19.03.2011 13:15 Bokos | | refresh stranky v PHP, ASP | 1 | 399 | 06.05.2010 18:31 Ďuri | | automatický refresh v PHP, ASP | 3 | 535 | 05.03.2010 1:01 Merlin_sk | | Refresh url v HTML, XHTML, XML, CSS | 2 | 315 | 25.08.2015 15:39 Kraliček | | Form refresh v PHP, ASP | 7 | 538 | 01.07.2009 17:05 rooobertek | | Refresh marquee v HTML, XHTML, XML, CSS | 2 | 449 | 20.05.2009 19:31 tofina0 | | Refresh Firefox v Sieťové a internetové programy | 3 | 520 | 12.02.2009 11:14 brm |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|