Bueno . .no es que no se pueda hacer en PHP (casí sólo .. ) sino que el efecto es ese mismo, se ha de recargar la página completamente y tratar las variables como tal para que no se "pierdan" sus valores .. Ejemplo el de la FAQ que ya han mencionado:
http://www.forosdelweb.com/showthrea...999#post664999
Pero .. por supuesto la técnica de "Ajax" es espectacular para resolver el problema .. y a "malas" si no hay mucho dato que trabaje estos elementos relacionados .. podría generarse el Javascript y que el "cliente" se trabaje su parte al recibir todos los datos. Tambien es buena opción RSS (Remote Scripting clásico) .. pero puestos a eso ... mejor irse por el lado de "Ajax" (xmlHttpRequest rebautizado).
Un saludo,