Deberías plantear el tema desde el punto de vista de "modelo de datos":
Si dices que tienes que guardar eventos (registros) que tienen como "identificador" una fecha y un usuario que le pertenecen .. Podrías hacer una tabla (de BD) tipo eventos:
id_evento
id_usuario
fecha_evento
titulo
descripcion
etc ...
Y una tabla para los usuarios:
id_usuario
nombre
etc...
Cuando X usuario tenga un evento .. simplemente guardas en la tabla "eventos" el ID del usuario que le pertenece y la fecha que corresponde junto con el resto de datos asociados.
Eso sería la base.
En
www.hotscripts.com tienes muchos scripts de calendarios y agendas. Pero la mayoría son "momousuario" (para un sólo usuario) .. el "truco" de "multiusuario" es simplemente guardar el IDentificador de a quien le pertenece esos datos.
Si quieres hacer consultas tipo "por usuario" .. sólo tienes que agrupar por "ID_usuario" .. o condicionales tipo "WHERE id_usuario= ....". Y lo mismo para fechas .. ejemplo "mostrar las personas que tengan eventos X dia ..". Todo se basa en "SQL" (la mayoría) y en hacer las consultas a tu BD (tabla(s)) implicadas.
Un saludo,