[Php-avanzado] Tesis Diego Oliva
Oliva, Diego M.
diego en olivadiegom.com.ar
Dom Dic 7 18:24:40 ART 2008
Buenas, Leo, te mando todo el proyecto de vuelta, a ver ahora que tul...
Agenda...
Registro de nuevo usuario:
Datos: Nombre de usuario, Contraseña, Nombre,
Apellido, Dirección, Teléfono, Mail (Obligados), y optativos, los mismos
que van a tener los contactos.
El usuario va a poder elegir de una lista un grupo
al cual inscribirse o va a tener la opción de crear un nuevo grupo. En
el primero de los casos, el alta va a estar regido por una configuración
independiente para cada grupo, que tiene de opciones: registro
automático; registro contra verificación de mail, registro contra
verificación de mail con direcciones de mail excluyentes, registro
contra aprobación del moderador del grupo. Si el usuario se está
registrando y a su vez quiere dar de alta un nuevo grupo, va todo contra
aprobación de administrador.
Una vez dentro del sistema:
Cada usuario va a poder dar de alta nuevos
contactos, asi como eliminar y modificar antiguos.
Cada contacto va a contar con los campos de
información: Nombre, Apellido, Una Foto, Múltiples Direcciones,
Múltiples Teléfonos, Múltiples Móviles, Múltiples E-Mails, Múltiples
Páginas Web. También es posible categorizar cada contacto dentro de un
grupo, y dichos grupos son únicos para cada usuario. Los teléfonos se
pueden clasificar como de un tipo (Móvil, Hogar, Trabajo, Etc), a los
cuales pueden ser agregados otros, también, únicos para cada usuario.
Por otro lado, también se deberá definir uno de todos los múltiples de
cada cosa como principal, para una mejor gestión de la información. Y,
por último, es posible definir permisos para cada contacto, para que el
mencionado pueda ser visible por el grupo al que pertenece el usuario,
para cualquier usuario del sistema, o que quede como privado.
Luego, la consulta: cada usuario va a tener acceso
a sus propios contactos, va a poder realizar busquedas por nombre o
apellido, listar por inicial de nombre o apellido y retringir busquedas
y listados a los distintos grupos. Y también podrá visualizar aquellos
contactos que tengan permisos suficientes como para que el usuario
logeado pueda ver.
Cada usuario va a tener su propia información
personal, la cual será visible para su grupo o para todos los usuarios,
configurable por dicho usuario.
*-------------- TABLAS -------------
cgroups (Grupos de los Contactos)*
`id` int(11) NOT NULL auto_increment,
`group` varchar(50) NOT NULL,
*cities*
`id` int(11) NOT NULL auto_increment,
`city` varchar(100) NOT NULL,
`pre` varchar(10) NOT NULL,
`zip` varchar(10) NOT NULL,
`id_prov` int(11) NOT NULL,
*country*
`id` int(11) NOT NULL,
`country` varchar(100) NOT NULL,
`pre` varchar(4) NOT NULL,
*data*
`id` int(11) NOT NULL auto_increment,
`name` varchar(100) NOT NULL,
`lname` varchar(100) NOT NULL,
`pic` varchar(100) NOT NULL,
`id_group` int(11) NOT NULL,
`id_user` int(11) NOT NULL,
`id_perm` int(11) NOT NULL,
*mails*
`id` int(11) NOT NULL auto_increment,
`mail` varchar(100) NOT NULL,
`top` tinyint(1) NOT NULL,
`id_data` int(11) NOT NULL,
*perm (Permisos disponibles para los contactos)*
`id` int(11) NOT NULL auto_increment,
`perm` tinyint(4) NOT NULL,
`desc` varchar(50) NOT NULL,
*
phones*
`id` int(11) NOT NULL auto_increment,
`phone` varchar(20) NOT NULL,
`desc` varchar(50) NOT NULL,
`id_ptype` int(11) NOT NULL,
`id_dir` int(11) NOT NULL,
`id_data` int(11) NOT NULL,
`top` tinyint(1) NOT NULL,
*pmails (Mails que serán permitidos al registro)*
`id` int(11) NOT NULL,
`pmails` varchar(100) NOT NULL,
*prov*
`id` int(11) NOT NULL,
`prov` varchar(100) NOT NULL,
`id_pais` int(11) NOT NULL,
*ptypes (Tipos de teléfonos)*
`id` int(11) NOT NULL auto_increment,
`type` varchar(25) NOT NULL,
*rconfig (Configuración del registro)*
`id` tinyint(4) NOT NULL,
`desc` varchar(50) NOT NULL,
*ugroups (Grupos de usuarios)*
`id` int(11) NOT NULL auto_increment,
`group` varchar(50) NOT NULL,
`id_rconfig` tinyint(4) NOT NULL,
`desc` varchar(250) NOT NULL,
*
users*
`id` int(11) NOT NULL auto_increment,
`user` varchar(30) NOT NULL,
`pass` varchar(64) NOT NULL,
`chash` varchar(64) NOT NULL,
`id_type` tinyint(4) NOT NULL,
`id_group` int(11) NOT NULL,
*utypes (Tipos de usuarios)*
`id` int(11) NOT NULL auto_increment,
`type` tinyint(4) NOT NULL,
`desc` varchar(250) NOT NULL,
*webs*
`id` int(11) NOT NULL auto_increment,
`web` varchar(150) NOT NULL,
`desc` varchar(100) NOT NULL,
`top` tinyint(1) NOT NULL,
`id_data` int(11) NOT NULL,
Saludos,
--
Oliva, Diego Martín
www.olivadiegom.com.ar
diego en olivadiegom.com.ar
Tel.: +542235530137
Mar del Plata, Bs. As.
Argentina.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://www3.fi.mdp.edu.ar/cgi-bin/mailman/private/php-avanzado/attachments/20081207/efc6ce97/attachment.htm
Más información sobre la lista de distribución Php-avanzado