Foros del Web » Programando para Internet » PHP »

Manejar datos por categorias

Estas en el tema de Manejar datos por categorias en el foro de PHP en Foros del Web. Hola... Trabajo actualmente en un proyecto de Bolsa de Empleo. Algunos trabajos no pertenecen a una sola categoria sino a varias categorias. ¿Cual es la ...
  #1 (permalink)  
Antiguo 08/05/2008, 14:28
 
Fecha de Ingreso: abril-2008
Ubicación: Cali
Mensajes: 53
Antigüedad: 16 años
Puntos: 2
Manejar datos por categorias

Hola...

Trabajo actualmente en un proyecto de Bolsa de Empleo.


Algunos trabajos no pertenecen a una sola categoria sino a varias categorias.



¿Cual es la mejor forma de manejar las categorias de un trabajo?


Yo habia pensado tener dentro de la tabla de "trabajos disponibles", un campo llamado categoria donde por comas separo las diferentes categorias; pero despues intente cargar el numero de trabajos por categorias por medio de la opcion LIKE y no me cargo correctamente.



¿Como hacerlo entonces de una manera efectiva?


PS: Las categorias las estoy manejando como cuando una persona se inscribe en alguna pagina (puede ser el correo en hotmail) y le aparecen la seccion "preferencias", entonces la gente empieza a chulear los cuadros donde aparece sus gustos y preferencias.
  #2 (permalink)  
Antiguo 08/05/2008, 15:09
Avatar de jaronu  
Fecha de Ingreso: febrero-2008
Mensajes: 2.183
Antigüedad: 16 años, 2 meses
Puntos: 52
Re: Manejar datos por categorias

Hola,
Yo trabajaria con dos tablas de la BD relacionales, osea, relacionar la tabla categorias con la tabla trabajos

Tabla categorias:

id_categoria (autoincrement)
nombre_categoria


Tabla trabajo

nombre_trabajo
.
.
.
.
id_categoria

Las tablas se relacionan con el id_categoria

Esta es la idea, primero haces una consulta para saber la categoria y despues otra consulta a la tabla trabajos dode los trabajos coinciden con el id_categoria.

Un saludo
  #3 (permalink)  
Antiguo 09/05/2008, 07:22
 
Fecha de Ingreso: abril-2008
Ubicación: Cali
Mensajes: 53
Antigüedad: 16 años
Puntos: 2
Re: Manejar datos por categorias

Si, yo estaba pensando en hacer eso....

De hecho, en la tabla de trabajos disponibles pensaba introducir el id de la categoria... el problema es que un trabajo puede tener varias categorias, entonces no se como introducir por ejemplo tres categorias diferentes para un mismo trabajo.

Habia pensado introducirlas y separarlas por comas para luego cargarla por medio de un MATCH AGAINST; pero no me funciono; luego intente con el LIKE pero el problema es que si la categoria era la numero 14, me carga la 14, la 1 y la 4 y necesito que solo me cargue la 14 (por ejemplo).

Entonces, si el trabajo que estoy ofertando esta, por ejemplo, en el area de Internet (id 4), en el area de Informatica (id 1) y en el area de Recursos Humanos (id 17), en la celda "id_categoria" de la tabla de trabajos me quedaria con este valor: "1, 4, 17" o en su defecto me quedaria asi: "1 4 17".

Necesito hacer una seccion llamada "Trabajos ofertados por categorias" y la idea es que me salga la categoria con un parentesis al frente y dentro del parentesis me salga el numero de trabajos que hay por esa categoria "(34)"; teniendo en cuenta que el trabajo anteriormente mencionado esta en la categoria 1, en la categoria 4 y en la categoria 17.


Espero que me puedan ayudar a darle una solucion a este problema, o si tengo que cambiar las tablas, no importa pero poder solucionar este "chicharroncito". Muchas Gracias.
  #4 (permalink)  
Antiguo 09/05/2008, 07:25
Avatar de farra  
Fecha de Ingreso: marzo-2008
Ubicación: Aqui estoy
Mensajes: 574
Antigüedad: 16 años, 1 mes
Puntos: 20
Re: Manejar datos por categorias

yo trabajaria con 3 tablas:

1) tabla Trabajos
2) tabla Categorias
3) tabla trabajocategoria
__________________
Firma:
Es mas dificil para el mono entender que el hombre desciende de el....

PD: Siempre doy karma al que me da una buena respuesta... ;0)
  #5 (permalink)  
Antiguo 09/05/2008, 07:33
 
Fecha de Ingreso: septiembre-2005
Mensajes: 840
Antigüedad: 18 años, 7 meses
Puntos: 84
Re: Manejar datos por categorias

Es una Relacion N:M ( Muchos a Muchos )

es decir, 1 trabajo puede tener muchas categorias, y 1 categoria muchos trabajos.

Por lo que el modelo relacional determina, que genera una nueva tabla en la base de datos, tal y como ha dixo farra

Tabla Trabajo: Todos los datos de Trabajo, ID unico por Trabajo
Tabla Categoria: Lo mismo, ID unico por Categoria

Tabla TrabajoCategoria: 2 Campos, IdTrabajo, IdCategoria, Clave Principal, los 2 campos juntos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:58.