abonnement Unibet Coolblue Bitvavo
pi_48546120
quote:
Op vrijdag 20 april 2007 14:07 schreef George.W.Bush het volgende:
Dat valt wel mee volgens mij. http request 1 trekt de inhoud van een gekozen pagina uit de pagina tabel en plaatst die in mijn fckeditor (getPageBody). In deze funtie heb ik nu getVersions geintegreerd die via een xmlhttprequest een andere query uitvoert die uit de versie tabel het aantal versies van de gekozen pagina haalt en deze toont.
Maar waarom haal je niet in 1 request de pagina EN de bijbehorende versieinformatie tegelijk op?
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_48547296
quote:
Op vrijdag 20 april 2007 17:12 schreef SuperRembo het volgende:

[..]

Maar waarom haal je niet in 1 request de pagina EN de bijbehorende versieinformatie tegelijk op?
Ik bedacht me later dat dat zou kunnen, maar ik zie niet zo zeer de toegevoegde waarde van een join in mijn query tov 2 xmlhttprequest om de code aan te passen, of zie ik wat over het hoofd?
O say, can you see, by the dawn's early light. What so proudly we hailed, at the twilight's last gleaming...
pi_48549832
Ik zeg niet dat je een join in je query moet stoppen, ik zeg alleen dat je waarschijnlijk beter die resultaten in 1 httprequest kunt versturen. Dat is sneller, belast de server minder en is makkelijker in javascript.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_48610865
quote:
Op vrijdag 20 april 2007 19:26 schreef SuperRembo het volgende:
Ik zeg niet dat je een join in je query moet stoppen, ik zeg alleen dat je waarschijnlijk beter die resultaten in 1 httprequest kunt versturen. Dat is sneller, belast de server minder en is makkelijker in javascript.
Dat bedoelde ik dus. Is 1 'moeilijkere' query sneller dan twee html requests met 2 maal een simpele select?

Die javascript heb ik nu al, hoewel dit voor toekomstige aanpassingen inderdaad vragen om problemen is
O say, can you see, by the dawn's early light. What so proudly we hailed, at the twilight's last gleaming...
  zondag 22 april 2007 @ 20:24:18 #155
12880 CraZaay
prettig gestoord
pi_48611096
quote:
Op zondag 22 april 2007 20:17 schreef George.W.Bush het volgende:

[..]

Dat bedoelde ik dus. Is 1 'moeilijkere' query sneller dan twee html requests met 2 maal een simpele select?

Die javascript heb ik nu al, hoewel dit voor toekomstige aanpassingen inderdaad vragen om problemen is
Het is natuurlijk niet zo dat er een 1-op-1 relatie is in het aantal requests en het aantal queries: je kunt met 1 httprequest prima zorgen dat je server side 2 queries uitvoert.
pi_48611932
quote:
Op zondag 22 april 2007 20:24 schreef CraZaay het volgende:

[..]

Het is natuurlijk niet zo dat er een 1-op-1 relatie is in het aantal requests en het aantal queries: je kunt met 1 httprequest prima zorgen dat je server side 2 queries uitvoert.
Uiteraard de serverside kant kan natuurlijk van alles uitvoeren, het ging me nu om deze specifieke situatie.
O say, can you see, by the dawn's early light. What so proudly we hailed, at the twilight's last gleaming...
  zondag 22 april 2007 @ 23:31:00 #157
12880 CraZaay
prettig gestoord
pi_48618022
quote:
Op zondag 22 april 2007 20:46 schreef George.W.Bush het volgende:

[..]

Uiteraard de serverside kant kan natuurlijk van alles uitvoeren, het ging me nu om deze specifieke situatie.
Waarom kun je in deze specifieke situatie dan niet met 1 httprequest zowel de inhoud van de pagina als de beschikbare versies ophalen? Of zie ik iets over het hoofd?
pi_48618670
quote:
Op zondag 22 april 2007 23:31 schreef CraZaay het volgende:

[..]

Waarom kun je in deze specifieke situatie dan niet met 1 httprequest zowel de inhoud van de pagina als de beschikbare versies ophalen? Of zie ik iets over het hoofd?
Dat kan ook Ik stel alleen een tegenvraag... maak het zoveel uit of ik 2 httprequest uitvoer ipv een moeilijke(re) query?

Uiteraard is de javascript moeilijker, maar die heb ik al. Ik heb nu 2 simpele select queries, als ik 'm ombouw naar 1 http request moet ik een join in m'n query bouwen. Mijn serverside script wordt dan zwaarder.

Heeft het performance wijs zin om het te doen, los van het feit dat de clientside scripting eenvoudiger zal worden en dus in de toekomst eenvoudiger aan te passen

Ik bedenk me nu ook... hoe haal ik meerdere gegevens over? Ik echo nu het result van mijn query, die ik dan clientside in de http.responseText heb staan. Maar als ik serverside verschillende gegevns heb... hoe doe ik dat dan?
O say, can you see, by the dawn's early light. What so proudly we hailed, at the twilight's last gleaming...
pi_48619318
Nogmaals, je hoeft geen join in je query te stoppen. Je kunt nog steeds die 2 simpele query's uitvoeren. De meeste snelheidswinst haal je doordat je browser niet 2x verbinding met de server hoeft te maken. (En als het een beveiligde pagina is waarvoor je ingelogd moet zijn hoef je maar 1x de sessie te controleren.)

Het is so wie so handig om te weten hoe je meerdere gegevens tegelijk te sturen. De X van ajax staat voor XML; je zou dus XML kunnen gebruiken, maar het werken met XML in javascript (en in PHP) is omslachtig. JSON (zie http://json.org) werkt veel makkelijker. Je stuurt met php bijvoorbeeld

1   echo "{body:'Dit is de <em>body</em>', version:'3.14.15'}"

In javascript doe je weer een eval() van die tekst:

1
2
3
4
5
request.onreadystatechange = function() {
   var reponseData = eval(request.responseText);
   document.getElementById('PageBody').innerHTML = reponseData.body;
   document.getElementById('PageVersion').innerHTML = reponseData.version;
}


Makkelijk uit te breiden, duidelijk leesbaar en snel
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_48622131
quote:
Op maandag 23 april 2007 00:25 schreef SuperRembo het volgende:
Nogmaals, je hoeft geen join in je query te stoppen. Je kunt nog steeds die 2 simpele query's uitvoeren. De meeste snelheidswinst haal je doordat je browser niet 2x verbinding met de server hoeft te maken. (En als het een beveiligde pagina is waarvoor je ingelogd moet zijn hoef je maar 1x de sessie te controleren.)

Het is so wie so handig om te weten hoe je meerdere gegevens tegelijk te sturen. De X van ajax staat voor XML; je zou dus XML kunnen gebruiken, maar het werken met XML in javascript (en in PHP) is omslachtig. JSON (zie http://json.org) werkt veel makkelijker. Je stuurt met php bijvoorbeeld
[ code verwijderd ]

In javascript doe je weer een eval() van die tekst:
[ code verwijderd ]

Makkelijk uit te breiden, duidelijk leesbaar en snel
Hee, interessant! Ik ga dat JSon verder door lezen, ik neem aan dat ik er wat scripts voor op de server moet zetten?
quote:
JSON is a subset of the object literal notation of JavaScript. Since JSON is a subset of JavaScript, it can be used in the language with no muss or fuss.
Dus geen 'extra' scripts en dergelijke nodig, Out of the box?
O say, can you see, by the dawn's early light. What so proudly we hailed, at the twilight's last gleaming...
pi_48622266
quote:
Op maandag 23 april 2007 08:28 schreef George.W.Bush het volgende:
Dus geen 'extra' scripts en dergelijke nodig, Out of the box?
PHP heeft vanaf versie 5.2 json_encode() en json_decode(). Om json in javascript te decoden kun je eval() gebruiken. De andere kant op gaat iets minder eenvoudig, maar daar zijn makkelijk scripts voor te vinden (bijv. op json.org). Json encoden in javascript heb je eigenlijk niet zo vaak nodig, alleen als je vanuit js (veel) gegevens terug wil posten naar de server.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_48622729
quote:
Op maandag 23 april 2007 08:40 schreef SuperRembo het volgende:

[..]

PHP heeft vanaf versie 5.2 json_encode() en json_decode(). Om json in javascript te decoden kun je eval() gebruiken.
Maar als ik zoals jij hierboven op die manier echo'ed dan kan ik het ook dmv van var reponseData = eval(request.responseText); 'opdelen'? Daarvoor hoef ik geen extra scripts te installeren?
quote:
De andere kant op gaat iets minder eenvoudig, maar daar zijn makkelijk scripts voor te vinden (bijv. op json.org). Json encoden in javascript heb je eigenlijk niet zo vaak nodig, alleen als je vanuit js (veel) gegevens terug wil posten naar de server.
Dat is inderdaad voor mij op dit moment niet van toepassing. Ik stuur een GET request naar de server
O say, can you see, by the dawn's early light. What so proudly we hailed, at the twilight's last gleaming...
pi_48622830
Ik heb een probleem met het uitvoeren van Javascripts. Ik heb een vers geļnstalleerde Windows XP computer, met IE6. IE wil echter geen JS uitvoeren. Bij de beveiligingsinstellingen staat alles wat met Javascrips te maken heeft ingeschakeld, dus daar zou het hem niet in moeten zitten.

Iemand enig idee waar dit aan ligt?

[ Bericht 0% gewijzigd door geertp op 23-04-2007 12:31:48 (tikfoutje) ]
Soaves ne vent, smurges absent.
pi_48624473
quote:
Op maandag 23 april 2007 09:17 schreef geertp het volgende:
Bij de beveiligingsinstellingen staat alles wat met Java te maken heeft ingeschakeld, dus daar zou het hem niet in moeten zitten.
Gegeven het feit dat Java niets te maken heeft met Javascript, zou deze opmerking niet meer waarheid kunnen bevatten als je je best zou doen .
"If you are depressed you shouldn't be in C major!" - Rick Beato
pi_48624655
quote:
Op maandag 23 april 2007 10:23 schreef Litpho het volgende:

[..]

Gegeven het feit dat Java niets te maken heeft met Javascript, zou deze opmerking niet meer waarheid kunnen bevatten als je je best zou doen .
Ik denk dat hij ook even goed moet kijken naar wat hij precies wel en niet aangevinkt heeft
pi_48628473
ik bedoelde inderdaad alles wat met javascripts te maken heeft staat ingeschakeld.
Soaves ne vent, smurges absent.
  maandag 23 april 2007 @ 14:55:24 #167
12880 CraZaay
prettig gestoord
pi_48633326
quote:
Op zondag 22 april 2007 23:55 schreef George.W.Bush het volgende:

[..]

Dat kan ook Ik stel alleen een tegenvraag... maak het zoveel uit of ik 2 httprequest uitvoer ipv een moeilijke(re) query?
Wat SuperRembo hierboven al zegt: wat let je om twee simpele queries uit te voeren als reactie op 1 request?
  maandag 23 april 2007 @ 14:57:37 #168
12880 CraZaay
prettig gestoord
pi_48633425
quote:
Op maandag 23 april 2007 08:40 schreef SuperRembo het volgende:

[..]

PHP heeft vanaf versie 5.2 json_encode() en json_decode().
Daarnaast kun je het (bijvoorbeeld voor oudere PHP-versies) ook gewoon als string doen zoals in SuperRembo's voorbeeld.
pi_48636992
Of je plakt je twee serverside scripts iets nauwkeuriger bij elkaar Swets.

Hij gaat alleen over z'n nek van een enkele quote in mijn body tekst. En ik krijg een 'invalid label' net na versions echo "{body:'test', versions:'test'}";

[ Bericht 26% gewijzigd door George.W.Bush op 23-04-2007 17:04:33 ]
O say, can you see, by the dawn's early light. What so proudly we hailed, at the twilight's last gleaming...
pi_48642010
Sorry, haakjes vergeten:

1var data = eval("(" + jsonData + ")");
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_48647344
Wat doen die extra haakjes SR ?
O say, can you see, by the dawn's early light. What so proudly we hailed, at the twilight's last gleaming...
pi_48649283
Goeie vraag! Alleen weet ik niet of ik zelf wel helemaal begrijp.

De haakjes (de group operator) zorgen er in ieder geval voor dat wat er tussen staat als 1 statement wordt geėvalueerd (zoadat {..} een object wordt) en niet als serie statements (zodat {...} net als een functie-body uitgevoerd wordt).
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  maandag 23 april 2007 @ 21:53:22 #173
104583 cyberstalker
Een krachtig neen!
pi_48649469
quote:
Op maandag 23 april 2007 21:48 schreef SuperRembo het volgende:
Goeie vraag! Alleen weet ik niet of ik zelf wel helemaal begrijp.

De haakjes (de group operator) zorgen er in ieder geval voor dat wat er tussen staat als 1 statement wordt geėvalueerd (zoadat {..} een object wordt) en niet als serie statements (zodat {...} net als een functie-body uitgevoerd wordt).
Nee. Die zorgen ervoor dat het een object is. Een object met waardes die je op naam kunt uitlezen.
Hope for the best, prepare for the worst.
pi_48650940
Nee. Het object is dat stuk tussen van { tot }.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// 1.a
var foo = {name: 'Bar', value: 'baz'};
// 1.b
var foo; 
eval("foo = {name: 'Bar', value: 'baz'}");
// 1.c
var foo = eval("({name: 'Bar', value: 'baz'})");

// 2.a
var foo = ['Bar', 'baz'];
// 2.b
var foo; 
eval("foo = ['Bar', 'baz']");
// 2.c
var foo = eval("['Bar', 'baz']");

De vraag is waarom je bij 1.c wel een setje () nodig hebt, en bij het analoge geval 2.c bij een array niet.
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  maandag 23 april 2007 @ 22:58:27 #175
104583 cyberstalker
Een krachtig neen!
pi_48651842
quote:
Op maandag 23 april 2007 22:31 schreef SuperRembo het volgende:
Nee. Het object is dat stuk tussen van { tot }.


[ code verwijderd ]
De vraag is waarom je bij 1.c wel een setje () nodig hebt, en bij het analoge geval 2.c bij een array niet.
Dat is omdat de [ ] voor een array staat en { } voor een object. Een gewone array kun je niet als associatieve array gebruiken, een object wel.
Hope for the best, prepare for the worst.
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')