Game on!quote:Op dinsdag 31 juli 2007 00:13 schreef wobbel het volgende:
Ik wil graag beginnen met PHP en Ajax...lijkt me wel lachen enzo
Nu ben ik op zoek naar een soort memoblok in Ajax, PHP en MySQL. Dus gewoon een text-area waar je wat typt en dan het dan gewoon opgeslagen wordt zonder dat ik op een submit knop hoef te drukken Lijkt me echt ideaal, want dan kan ik me browser afsluiten en later weer openen en dan staat het er gewoon weer (omdat het uit de DB wordt gehaald)
Ik zoek dus eigenlijk een klein kant en klaar script zodat ik beetje met Ajax kan knutselen
Voor online gebruik, of puur lokaal? De enige goed werkende manier om dit te doen is door elke keer als je een toets drukt het op te slaan, maar dat vreet enorm.quote:Op dinsdag 31 juli 2007 00:13 schreef wobbel het volgende:
Ik wil graag beginnen met PHP en Ajax...lijkt me wel lachen enzo
Nu ben ik op zoek naar een soort memoblok in Ajax, PHP en MySQL. Dus gewoon een text-area waar je wat typt en dan het dan gewoon opgeslagen wordt zonder dat ik op een submit knop hoef te drukken Lijkt me echt ideaal, want dan kan ik me browser afsluiten en later weer openen en dan staat het er gewoon weer (omdat het uit de DB wordt gehaald)
Ik zoek dus eigenlijk een klein kant en klaar script zodat ik beetje met Ajax kan knutselen
Bijna goed . Je kunt er een vertraging van een seconde inbouwen na de laatste keypress voordat je de AJAX call maakt. Zo zit er altijd minstens een seconde tussen zodat het niet enorm vreet, maar word het wel vaak geupdate in je backend .quote:Op dinsdag 31 juli 2007 01:20 schreef Geqxon het volgende:
[..]
Voor online gebruik, of puur lokaal? De enige goed werkende manier om dit te doen is door elke keer als je een toets drukt het op te slaan, maar dat vreet enorm.
Dan ben je alleen wel data kwijt als je te snel afsluit. Dan kun je net zo goed met een onblur werken. .quote:Op dinsdag 31 juli 2007 07:51 schreef WyriHaximus het volgende:
[..]
Bijna goed . Je kunt er een vertraging van een seconde inbouwen na de laatste keypress voordat je de AJAX call maakt. Zo zit er altijd minstens een seconde tussen zodat het niet enorm vreet, maar word het wel vaak geupdate in je backend .
Dan maak je er 1/4 seconde van . Na het typen en maximaal 5 seconde tussen 2 save acties . En misschien met indicatortje er bij van of het veilig is om af te sluiten . De kans dat iemand binnen die 1/4 van een seconde weet af te sluiten is vrij klein . Sowieso moet je je verbindingen gaan reguleren anders ga je een behoorlijke rotzooi aan nutteloze overhead krijgen aan AJAX calls die eingelijk direct al weer nutteloos worden doordat je direct er na een volgende toets indrukt en de volgende call alweer triggerd . (Geloof me dat wil je niet .)quote:Op dinsdag 31 juli 2007 08:19 schreef Geqxon het volgende:
[..]
Dan ben je alleen wel data kwijt als je te snel afsluit. Dan kun je net zo goed met een onblur werken. .
Maar goed, zoals ik al zei: Dat is dus de enige goedwerkende manier. Als je het anders gaat doen is de kans groot dat je data kwijt bent, en de hele functie van de applicatie weg is.
quote:Op dinsdag 31 juli 2007 08:32 schreef Mordreth het volgende:
tvptje
Dat is inderdaad een goede, een timer die om de 250 ms kijkt of er iets veranderd is, en zo ja > Submit.quote:Op dinsdag 31 juli 2007 08:31 schreef WyriHaximus het volgende:
[..]
Dan maak je er 1/4 seconde van . Na het typen en maximaal 5 seconde tussen 2 save acties . En misschien met indicatortje er bij van of het veilig is om af te sluiten . De kans dat iemand binnen die 1/4 van een seconde weet af te sluiten is vrij klein . Sowieso moet je je verbindingen gaan reguleren anders ga je een behoorlijke rotzooi aan nutteloze overhead krijgen aan AJAX calls die eingelijk direct al weer nutteloos worden doordat je direct er na een volgende toets indrukt en de volgende call alweer triggerd . (Geloof me dat wil je niet .)
Je kunt toch ook onunload gebruiken? Dan sla je alles op op het moment dat het window afgesloten wordt of de pagina verlaten wordt.quote:Op dinsdag 31 juli 2007 08:31 schreef WyriHaximus het volgende:
[..]
Dan maak je er 1/4 seconde van . Na het typen en maximaal 5 seconde tussen 2 save acties . En misschien met indicatortje er bij van of het veilig is om af te sluiten . De kans dat iemand binnen die 1/4 van een seconde weet af te sluiten is vrij klein . Sowieso moet je je verbindingen gaan reguleren anders ga je een behoorlijke rotzooi aan nutteloze overhead krijgen aan AJAX calls die eingelijk direct al weer nutteloos worden doordat je direct er na een volgende toets indrukt en de volgende call alweer triggerd . (Geloof me dat wil je niet .)
Maar je kan er ook een server mee onderuit trekken als je niet uit kijkt.quote:Op dinsdag 31 juli 2007 09:37 schreef Geqxon het volgende:
Veel AJAX calls zijn overigens geen enkel probleem. Zelf kan in binnen een seconden of drie 50 calls afhandelen.
Yeah, het mooie daar van is dat je de server niet zwaar belast . Een ander voordeel is dat je niet meerdere calls tegelijkertijd hebt open staan . Aan gezien je het allemaal controleerd . Probleem met veel calls is dat door een beetje klote routing of een tegenslagje verbinding A langzamer kan zijn dan verbinding B waar door B eerst opslaat en daarna A pas waar door je weer een beetje kwijt bent .quote:Op dinsdag 31 juli 2007 09:37 schreef Geqxon het volgende:
[..]
Dat is inderdaad een goede, een timer die om de 250 ms kijkt of er iets veranderd is, en zo ja > Submit.
Het kan alleen, zoals SuperRembo als zegt, kan je er vrij gemakkelijk een server me onderuit halen . Dat is altijd leuk om te zien . Beter gezegt het resultaat van een beetje code kloppen is altijd leuk om te zien dat (als) het goed werkt .quote:Op dinsdag 31 juli 2007 09:37 schreef Geqxon het volgende:
Veel AJAX calls zijn overigens geen enkel probleem. Zelf kan in binnen een seconden of drie 50 calls afhandelen. In mijn situatie: Je klikt op een vakje, in een array word een XML-object aangemaakt, je vraagt een PHP pagina op, die rommelt wat in de database, en vervolgens krijgt de user een XML bestand terug met de instructies die Javascript af moet handelen. In dit geval het blauw oplichten van het vakje. Voor de grap een javascript actie gemaakt die alle 50 vakjes in 1 keer veranderd, en na ongeveer 3 seconde waren ze allemaal opgelicht. Was wel grappig om te zien, dat ze allemaal op een rijtje van kleur switchte.
Ja dat kan ook maar dan moet je AJAX call wel snel genoeg zijn . Geeft je iig een stuk minder zekerheid dan met times outs zoals hier boven beschreven staat .quote:Op dinsdag 31 juli 2007 10:00 schreef doka het volgende:
[..]
Je kunt toch ook onunload gebruiken? Dan sla je alles op op het moment dat het window afgesloten wordt of de pagina verlaten wordt.
quote:Op dinsdag 31 juli 2007 10:11 schreef SuperRembo het volgende:
[..]
Maar je kan er ook een server mee onderuit trekken als je niet uit kijkt.
Op het moment dat het document afgesloten wordt moet je een niet-synchrone call doen, dan wordt je document altijd opgeslagen. Dan hoef je zelfs in principe verder helemaal geen calls te doen tijdens het editten van de text. Hoewel je het voor de zekerheid beter wel kunt doen.quote:Op dinsdag 31 juli 2007 10:28 schreef WyriHaximus het volgende:
Ja dat kan ook maar dan moet je AJAX call wel snel genoeg zijn . Geeft je iig een stuk minder zekerheid dan met times outs zoals hier boven beschreven staat .
Hmm werkt die ook nog op het moment dat de unload word getriggerd doordat je je browser afsluit?quote:Op dinsdag 31 juli 2007 10:38 schreef doka het volgende:
[..]
Op het moment dat het document afgesloten wordt moet je een niet-synchrone call doen, dan wordt je document altijd opgeslagen. Dan hoef je zelfs in principe verder helemaal geen calls te doen tijdens het editten van de text. Hoewel je het voor de zekerheid beter wel kunt doen.
Dat weet ik niet eigenlijk...quote:Op dinsdag 31 juli 2007 10:41 schreef WyriHaximus het volgende:
[..]
Hmm werkt die ook nog op het moment dat de unload word getriggerd doordat je je browser afsluit?
Ik test zo wel ff, eerst ff me collega zijn werk zien te hacken .quote:
Ik heb er voor de grap een controller achter gehangen die een tekstbestand inleest. Als mijn hostingsprovider meewerkt zal ik hem uploaden.quote:Op dinsdag 31 juli 2007 10:41 schreef Geqxon het volgende:
Ik ben iets te ver doorgeschoten met mijn voorbeeld:
Download
Disclaimer: Het kan beter, sneller, anders, maar dit doet wat het moet doen.
En als je echt zekerheid wilt, dan maak je voor elke AJAX-call een nieuw XML-object aan.
Leuk beginnetje... alleen er moet toch nog best veel gebeuren om het echt goed te laten werken.quote:Op dinsdag 31 juli 2007 13:21 schreef Geqxon het volgende:
[..]
Edit: Toegepast voorbeeld
Heb ik toch zomaar per ongeluk een MVC model toegepast.
Proof of concept. .quote:Op dinsdag 31 juli 2007 14:59 schreef SuperRembo het volgende:
[..]
Leuk beginnetje... alleen er moet toch nog best veel gebeuren om het echt goed te laten werken.
Jep, onkeydown. Wat je eventueel kunt doen is naar het verschil tussen de vorige update kijken, gecombineerd met de datum van de laatste update. Dat hij pas update als er al een seconde lang geen updates meer zijn.quote:Op dinsdag 31 juli 2007 15:26 schreef SuperRembo het volgende:
Dit kreng update zelfs als je er gewoon met de pijltjes doorheen navigeert
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |