Foros del Web » Programando para Internet » PHP »

crar tabla para agregar amigos o usar tabal existente?

Estas en el tema de crar tabla para agregar amigos o usar tabal existente? en el foro de PHP en Foros del Web. buenos Dias amigos vengo a ver si me pueden ayudar con un problema que tengo estoy haciendo un scritp algo comouna red social pero se ...
  #1 (permalink)  
Antiguo 01/05/2011, 09:00
 
Fecha de Ingreso: febrero-2011
Ubicación: Venezuela
Mensajes: 9
Antigüedad: 13 años, 9 meses
Puntos: 0
Pregunta crar tabla para agregar amigos o usar tabal existente?

buenos Dias amigos vengo a ver si me pueden ayudar con un problema que tengo estoy haciendo un scritp algo comouna red social pero se me persento un problema es que no se me ocurre como hacer para que los usuarios se agreguen como amigos esta es la tabla de los usuarios

Código PHP:
CREATE TABLE `usuarios` (
  `
idint(11NOT NULL auto_increment,
  `
nombretext,
  `
apellidostext,
  `
correotext,
  `
contraseñatext,
  `
fecha_nacimientotext,
  `
sexotext,
  `
interestext,
  `
paistext,
  `
telefonotext,
  `
pintext,
  `
facebooktext,
  `
foto_perfiltext,
  
PRIMARY KEY  (`id`)
ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=

ahora como haria para ejemplo en usuario pedro sea amigo de maria

se crea otra tabla o en la misma tabla se crea un campo algo como amigos_id y se van agergando , esta ultima nose como agregar mas de un campo XD necesito ayuda gracias por ayudarme
  #2 (permalink)  
Antiguo 01/05/2011, 09:16
 
Fecha de Ingreso: abril-2006
Ubicación: Bogotá
Mensajes: 251
Antigüedad: 18 años, 6 meses
Puntos: 14
Respuesta: crar tabla para agregar amigos o usar tabal existente?

La manera que podrías utilizar(que por lo general se utiliza) es crear una nueva tabla que genere esa relación de amigos, p.e: rel_amigos y allí vas a tener dos columnas:

id_usuario1 | id_usuario2 | fecha_creacion

Bueno, tienes que buscarte unos nombres mas descriptivos, pero basicamente seria esto, luego solo agregas el id del que solicito ser amigo y el id del amigo que acepto (si es que lo hizo).

También podrías agregar un estado para ver en qué proceso va la solicitud y muchas otras cosas jeje, depende de tu imaginación.

Por ejemplo estado_amistad:

id | nombre | fecha_creacion | estado
1 En espera XXXX-XX-XX ACTIVO
2 Acepto XXXX-XX-XX ACTIVO
......

Saludos!
  #3 (permalink)  
Antiguo 01/05/2011, 09:56
 
Fecha de Ingreso: febrero-2011
Ubicación: Venezuela
Mensajes: 9
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: crar tabla para agregar amigos o usar tabal existente?

si puedo mira hice esto crear una tabñla llamada amigos con 3 campos id amigoa y amigob

cuando una persona envbia una solicitud a otra crear una entrada lñlenando los campo id y amigoa si la otra pesona acepta terminaria de llanadar y ella seria el b el contenido de a y b serian los id de las cuentas pero tengo nu problema ejemplo hice la conexion al servidor para que mostrara todos los amigob del id del usuario muestra todos los id pero como hago para que repita todo lso id dentr de la consulta cuentas? para que muestre envez de solo id el nombre y la imagen que s encuentran almacenados en la tabla cuentas??? gracia spor tu aydua
  #4 (permalink)  
Antiguo 01/05/2011, 10:36
 
Fecha de Ingreso: abril-2006
Ubicación: Bogotá
Mensajes: 251
Antigüedad: 18 años, 6 meses
Puntos: 14
Respuesta: crar tabla para agregar amigos o usar tabal existente?

Hola nuevamente,

No sé si te entendí bien, pero en realidad si tu quieres listar los amigos que tiene "Pepe", primero debes saber el id de él, si el id de "Pepe" es 1, entonces basta con que hagas otra consulta con:

Código PHP:
$consulta2 "SELECT usuario.nombre, usuario.foto FROM usuario INNER JOIN rel_amigos ON rel_amigos.id_amigob = usuario.id WHERE rel_amigos.id_amigoa = '1'"
Lo que traería el nombre y la foto de todos los amigos que tiene Pepe(id 1).
  #5 (permalink)  
Antiguo 01/05/2011, 10:37
(Desactivado)
 
Fecha de Ingreso: abril-2011
Mensajes: 153
Antigüedad: 13 años, 6 meses
Puntos: 236
Respuesta: crar tabla para agregar amigos o usar tabal existente?

Hola!, bueno a como entendí lo que quieres hacer es mostrar la lista de amigos de tal usuario.
Pues para hacer esto hay que conseguir en una sola consulta los datos de la tabla de amigos y la tabla dónde se muestran los datos de cada usuario registrado, uniendolas por medio del nombre del amigo y del usuario y por último filtrarlas con le nombre del usuario en las dos tablas.
Por ejemplo:
************************************************** ***************
<?php
$consulta_amigos=mysql_query("
select * from
datos_usuario u /* Dónde aquí es la tabla que tiene cada dato de usuario registrado*/
inner join amigos a on a.amigo=u.usuario /* Aquí une las tabla de datos_usuario con la tabla de amigos mediante el amigo del usuario y el usuario */
where a.de='$USUARIO' and u.usuario!='$USUARIO'
/* Por últmo se filtra el resultado para obtener la lista de amigos exacta del usuario:
dónde a.de es el nombre del usuario en la tabla amigos y u.usuario es el nombre del usuario en la tabla datos_usuario.
Si deseas obtener sólamente un amigo simplemente agregas otra condición así:
and a.amigo='$AMIGO'
*/

");
?>
************************************************** ***************
Espero que esta información de haya servido Saludos!

Etiquetas: existente, tabla
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 07:15.