Pabaigta ajax
by neworld on Geg.05, 2007, under NeWorld
Pabaigiau ajax. Dabar yra visos funkcijos, kurios buvo. Praktiškai jokiu akivaizdžių pokyčių, tik:
- Puslapis veikia greičiau
- Paspaudus naršyklės refresh grįžta į pradinį puslapį
- Neina pakeisti vėliavos
- Gali būti nenumatytų problemų
Bet kaip bebūtų tobulėjame. Šios klaidos (2-4 nr.) bus ištaisytos. Taip pat ajax technologija leis daugiau galimybių, kaip live chat, patogesnį, bei lengvai keičiamą, pagal kiekvieno poreikus, interfeisa.
Tinklapis perdaromas pagal ajax technologija
by neworld on Geg.03, 2007, under NeWorld
Perdarau tinklapį į ajax. Kadangi tai bus ilgas procesas, rašysiu prograsą:
- paruošti ajax karkasą
- perkelti visas nuorodas ant naujo ajax karkaso
2.1 pagrindinės nuorodos
2.2 planetų keitimas
2.3 kitos nuorodos
       2.3.1 plėtimasis
       2.3.2 Planetų info
       2.3.3 Invazija
2.3.4 Forumas
2.3.5 Paštas
2.3.6 Statistikos - perkelti visus post duomenų siuntimus ant ajax
- taisyti likusias klaidas
- testuoti
- įdėti
Pastorinas tekstas reiškia kad ši dalis pabaigta
pasvires tekstas reiškia kad daroma ši dalis
paprastas tekstas reiškia kad tos dalys yra eilėje
Ajax ir IE6 cache bėdos
by neworld on Bal.18, 2007, under ajax
Jeigu ką nors mėginate daryti naudodamis ajax technologiją, patatarimas, visada iš serverio siuskite header’į:
Cache-Control: no-cache, must-revalidate
Expires: Mon, 26 Jul 1997 05:00:00 GMT
Pavizdys:
[code lang="php"] header("Cache-Control: no-cache, must-revalidate");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
[/code]
Kadangi IE6 pagal default nustatymus tikrina tik pagal adresą, todėl jeigu du sykius siusite užklausą tuo pačiu adresu ir nebus šio headerio, tai pirmos užklausos rezultatą patalpins cache ir daugiau kurį laiką naudos tik iš cache.
Pradžia su ajax
by neworld on Bal.04, 2007, under ajax
Turbūt daugelis žino kas yra ajax, todel atskirai šios temos nenagrinėsiu.
Pats paprasčiausias variantas yra:
Visa šita kodą reikia priskirti pačioje pradžioje, prieš vykdant ajax
[code lang="javascript"]//ši funkcija mum sukurs objektą, kuris yra ajax pagrindas.
function createRequestObject() {
var ajax;
var browser = navigator.appName;
if (browser == “Microsoft Internet Explorerâ€) {
ajax = new ActiveXObject(“Microsoft.XMLHTTPâ€);
} else {
ajax = new XMLHttpRequest();
}
return ajax;
}
//musu kintamajam http bus priskirta
var http = createRequestObject();
//mūsų funkcija skirta pačiam paprasčiausiam ajax panaudojimui
function sndReq(adr,handle) {
//ši funkcija nusiunčia GET methotu duomenis adresu adr
http.open('get', adr);
//kai duomenys bus nusiusti ir parsiusti bus vykdima handle kintamajam priskirta funkcija. Visos funckijos turi būti be argumentų, t.y. myhandle() tinka, tačiau myhandle(duomuo, antrasduomuo); nebetinka
http.onreadystatechange = handle;
//si funkcija skirta tik tuo atveju jeigu siunčiami POST metodu duomenys
http.send(null);
}
function myhandle() {
if (http.readyState == 4) {
var response = http.responseText;
alert(response);
}
}
[/code]
na o panaudoti galima šitaip
[code lang="javascript"]sndReq('labas.php',myhandle) [/code]
o labas.php turetu atrodyti maždaug šitaip:
[code lang="php"][/code]
Jei viskas gerai turėtumėte pamatyti lentelę su užrašu “sveikas, kaip sekasi”.
Straipsnis parašytas remiantis pixel.lt
Mokėsčių sistema
by neworld on Kov.15, 2007, under NeWorld
Atnaujinus planetų sistemą, tai buvo padaryti labai lengva. Tereikejo sukurti dar viena stulpeli duomenim saugot, papildyt klase kintamuoju ir sukurti nustatymą.