Newsgroups: sfnet.atk.ohjelmointi.alkeet
Subject: Re: php + sivuston rakenne
References: 
Jori Malmivaara  writes:

> Hei
> 
> Olen koittanut haeskella alkeisohjeita php-sivuston toteutukseen. Ja
> sivuston rakenteen toteutus on j��nyt minulle ep�selv�ksi.
> 
> Onko mahdollista p�ivitt�� sivusta (kun k�ytt�j� on l�hett�nyt
> lomakkeen tai klikannut linkki�) vain esim. yhden div-elementin sis�lt�,
> niin, ett� muilta osin sivua ei p�ivitet�.

Pelk�st��n PHP:ll� ei kyll� menn� tuollaisia vain sivun osien 
p�ivityksi� toteuttamaan. PHP:n kannalta homma toimii normaalisti 
siten ett� PHP tuottaa aina kerralla sivun jonka sitten selain 
ottaa kokonaisuudessaan vastaan ja esitt��. 
Eli koko sivu menee p�ivitykseen aina kun lomake l�hetet��n. 

Jos haluat toteuttaa hommaan niin, ett� HTML-sivusta vain osia 
p�ivitet��n lennosta, niin sitten tarvitset muutakin kuin PHP:ta. 
Tarvitset selainp��ss� py�riv�� "�ly�" joka osaa pyydell� noita 
sovun p�ivitett�vi� osia pala kerrallaan serverist� 
(serverin kannalta ne on kuin yksitt�isen sivun pyynt�j�) 
ja sitten p�ivitt�� niit� n�kyv�n HTML-sivun dokumenttimalliin. 
T�llaisella tavalla toimivaa tekniikkaa kutsutaan AJAX 
nimell�. Siin� selainp��n "�lykkyys" on toteutettu 
Javascriptill� ja palvelinp��n toiminnot sitten sopivalla 
siell� py�riv�ll� kielell� (PHP k�y t�h�n oikein hyvin).

Prosessori-lehden numerossa 11/2005 oli lyhyt artikkelini aiheesta
Keilassa: Ajaxilla parempia k�ytt�liittymi�
http://www.prosessori.fi/arkisto/hakutulos.asp?haku=AJAX&x=0&y=0
(lukeminen vaatii ett� on prosessorin tilaaja)
Jutun linkit l�ytyy osoitteesta 
http://www.prosessori.fi/uutiset/uutinen.asp?id=47890
Esimerkkikodia voi testailla ja ladata osoitteesta
http://www.epanorama.net/prosessori/

> Onko t�m� edes j�rkev� tapa toteuttaa sivuston rakennetta 

Riippuu tilanteesta. Yleens� kannattaa mietti� kahdesti. 
Toisinaan sen kahden mietinn�n tuloksena t�m� voi olla 
sittenkin se toimivin ratkaisu. 

> ja jos ei
> niin kuinka t�m� pelk�n ns. "content" -osan p�ivitys tulisi tehd�? 
> T�ytyisi siis tehd� php:ll� vastaavaa kuin mihin frameja k�ytet��n.

Frame emulointiin on l�hinn� kaksi tapaa.

Yksi on tuo AJAX. 

Toinen on ett� sivu on useina paloina palvleimella, ja ne kasataan 
sitten yhdeksi HTML tiedostoksi palvelimessa. Tiedot mit� milloinkin 
tulee n�ytt�� s�ilytet��n jossain sopivasti (sivun osoitteessa, 
session-muuttujassa tms..). Muutokset mit� miss�kin pit�isi n�ky� 
muutaa noita peruasetukisa ja aiheuttaa sivun uudelleen lataantumisen, 
jolloin saadaan se uusi oikea sivu jossa oikeat palat. 


-- 
Tomi Engdahl (http://www.iki.fi/then/)
Take a look at my electronics web links and documents at 
http://www.epanorama.net/