Foros del Web » Programando para Internet » PHP »

¿Cómo crear "categoría de amigos"?

Estas en el tema de ¿Cómo crear "categoría de amigos"? en el foro de PHP en Foros del Web. Hola a todos! Tengo una duda que espero me respondais, ya que me me tiene cansado de tanto pensarla. Tengo un blog en donde hay ...
  #1 (permalink)  
Antiguo 22/06/2011, 13:53
 
Fecha de Ingreso: marzo-2010
Mensajes: 151
Antigüedad: 14 años
Puntos: 0
¿Cómo crear "categoría de amigos"?

Hola a todos!
Tengo una duda que espero me respondais, ya que me me tiene cansado de tanto pensarla.
Tengo un blog en donde hay registrados unos 200 usuarios, necesito hacer que entre estos usuarios se puedan agregar como amigos y que a su vez dentro de amigos pongais a qué categoría pertenece (programadores,ociosos,gadgets, etc.) Podría hacer en la base de datos un campo para cada tipo de amigos, pero las categorías serían limitadas, es decir tendría que haber un campo por cada categoría y dentro de este campo meter todos los nick's que pertenecen a esa categoría, además de otro campo para saber cómo se llama ese nombre de la categoría, ¿me entendeis?

Cita:
//CAMPOS CON EL NOMBRE DE CATEGORIA

|____nombre1____|____nombre2____|
|____foreros____|____bloggers____|

//CAMPOS CON LOS NICKS
________________________________
|________amigos1_________|_______amigos2__________ |
|____juan,pedro,pablo,ana____|____mario_77,pepito, rulo____|
**Nota: Esto sería el SQL, pero lo que necesito saber viene a ser directamente PHP

Necesito una forma más fácil para saber a qué categoría pertenece cada amigos agregado, y si se puede, unsa forma que no sea limitada crear un campo para cada grupo(lo de agregar amigos ya me bajé un script; sería cosa de adaptarlo ¡No problem!)

Saludos!!
  #2 (permalink)  
Antiguo 22/06/2011, 14:30
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 18 años, 6 meses
Puntos: 56
Respuesta: ¿Cómo crear "categoría de amigos"?

Lo que necesitas es una tabla que una a los usuarios con sus amigos y cada uno de ellos a una categoría, algo como esto:

USUARIOS ---|< AMIGOS [id_usuario,id_amigo]
CATEGORIAS--|<CATEGORIAS_USUARIOS[id_categoria,id_usuario]>|--USUARIOS

lo demás lo puedes obtener por SQL
__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
  #3 (permalink)  
Antiguo 22/06/2011, 14:55
 
Fecha de Ingreso: marzo-2010
Mensajes: 151
Antigüedad: 14 años
Puntos: 0
Respuesta: ¿Cómo crear "categoría de amigos"?

Vale, te entendí bien, pero , ¿crees que sería la mejor opción, si en alguna ocasión quiero mostrar los amigos en una lista, o en algún otro órden?O también, ¿qué desventajas tiene hacerlo por tablas? Espero me respondais Jcsxne y gracias!
  #4 (permalink)  
Antiguo 22/06/2011, 15:51
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 18 años, 6 meses
Puntos: 56
Respuesta: ¿Cómo crear "categoría de amigos"?

usando tablas puedes tener Categorías y Amigos ilimitados; si los quieres mostra en una lista haces la consulta, por ejemplo para el usuario con id=4 sus amigos serían:
Código PHP:
SELECT DISTINCT
usuarios
.id as id,
usuarios.nombre as nombre,
amigos.id_amigo as amigo_id,
amigo_info.nombre as nombre_amigo
FROM
amigos
LEFT JOIN usuarios ON usuarios
.id amigos.id
LEFT OUTER JOIN usuarios 
AS amigo_info ON amigo_info.id amigos.id_amigo
WHERE usuarios
.id=
__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
  #5 (permalink)  
Antiguo 22/06/2011, 16:17
 
Fecha de Ingreso: marzo-2010
Mensajes: 151
Antigüedad: 14 años
Puntos: 0
Respuesta: ¿Cómo crear "categoría de amigos"?

Woo! Sí, tines razón, sólo me queda una duda y es que no entendí tu código. Usualmente yo selecciono los valores con select campo1,campo2 from TABLA where nombre='$mi_nombre'
¿Me puedes explicar cómo funciona ese tipo de consulta?
Y otra duda. Si se supone que el usuario con id 10 agregó al usuario con id 20, ¿cómo sabría que 20 es amigo de 10?

Última edición por Geze; 22/06/2011 a las 17:17
  #6 (permalink)  
Antiguo 22/06/2011, 21:02
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 18 años, 6 meses
Puntos: 56
Respuesta: ¿Cómo crear "categoría de amigos"?

Cita:
¿Me puedes explicar cómo funciona ese tipo de consulta?
Es solo lenguaje SQL, puedes buscar más info aquí en el foro ;)
Cita:
Y otra duda. Si se supone que el usuario con id 10 agregó al usuario con id 20, ¿cómo sabría que 20 es amigo de 10?
necesitarías grabar los ids de ambos en la tabla AMIGOS[id_usuario, id_amigo] (10,20)
si quieres que el usuario 15 sea amigo de 10 entonces: AMIGOS[id_usuario, id_amigo] (10,15)
__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
  #7 (permalink)  
Antiguo 23/06/2011, 12:59
 
Fecha de Ingreso: marzo-2010
Mensajes: 151
Antigüedad: 14 años
Puntos: 0
Pregunta Respuesta: ¿Cómo crear "categoría de amigos"?

Mil gracias, ya entiendo todo!
Saludos!

Última edición por Geze; 23/06/2011 a las 14:39

Etiquetas: Ninguno
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 05:47.