El nombre de la sesión debería ser el mismo que gestionas en tu sitio .. puede ser tu "itemsEncesta" o simplemente no usar nombre de sesión (session_name("nombre")) y dejar el que PHP pone por defecto (PHPSID o algo así ..). Lo que importa son las variables que vas a propagar en esa sesión.
Create una variable de sesión que lleve el ID de tu usuario (identificativo de tu BD o sistema donde almacences y gestiones tus usuarios) al hacer el login tu usuario.
En tu proceso de finalizar compra haces una simple comprobación a esa variable tipo:
Código PHP:
if (isset($_SESSION['id_usuario'])){
// mandas a ejecutar tu proceso de registro de tu carrito en tu BD o donde lo almacenese o destiono que le des bajo el ID_usuario
} else {
// tu código de registro del usuario o redireccionamiento hacia la actual página de registro. y resto del proceso.
}
Tu actual carrito (array que llevas en tu array) no afecta para nada el proceso. Sólo necesitas controlar si se ha de hacer el prodceso directamente de gestión de esos datos o bien se ha de pasar por el registro del usuario como ya lo haces actualmente.
Un saludo,