Ver Mensaje Individual
  #6 (permalink)  
Antiguo 11/03/2011, 10:32
Avatar de dART
dART
 
Fecha de Ingreso: enero-2009
Ubicación: Madrid
Mensajes: 246
Antigüedad: 15 años, 3 meses
Puntos: 7
Respuesta: Duda con ID de usuario

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Código MySQL:
Ver original
  1. SELECT campos
  2. FROM mensajes M
  3.       INNER JOIN usuarios U1 ON M.id_remitente = U1.is_usuario
  4.       INNER JOIN usuarios U2 ON M.id_dstino = U2.is_usuario
y el WHERE como sería? No es que me devuelva error, es que directamente me imprime que no hay registros (que será porque la condición no se cumple). He comprobado la variable y si que imprime el nick del usuario. No entiendo qué hago mal...


Código PHP:
/*
Compruebo si tiene mensajes privados */
$mensajes_unread $mysqli->query("SELECT * FROM usuarios_mensajes M
        INNER JOIN usuarios U1 ON M.id_remitente = U1.id_usuario 
        INNER JOIN usuarios U2 ON M.id_destino = U2.id_usuario WHERE U1.nick_usuario='$logged' AND mensaje_leido='0'"
) or die($mysqli->error); 

usuarios_mensajes.sql
Código:
CREATE TABLE IF NOT EXISTS `usuarios_mensajes` (
  `id_mensaje` int(11) NOT NULL auto_increment,
  `id_remitente` int(11) NOT NULL,
  `id_destino` int(11) NOT NULL,
  `texto_mensaje` text NOT NULL,
  `fecha_mensaje` date NOT NULL,
  `mensaje_leido` enum('0','1') NOT NULL default '0',
  PRIMARY KEY  (`id_mensaje`),
  KEY `id_destino` (`id_destino`),
  KEY `id_remitente` (`id_remitente`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;

--
-- Filtros para las tablas descargadas (dump)
--

--
-- Filtros para la tabla `usuarios_mensajes`
--
ALTER TABLE `usuarios_mensajes`
  ADD CONSTRAINT `usuarios_mensajes_ibfk_1` FOREIGN KEY (`id_remitente`) REFERENCES `usuarios` (`id_usuario`) ON DELETE NO ACTION ON UPDATE NO ACTION,
  ADD CONSTRAINT `usuarios_mensajes_ibfk_2` FOREIGN KEY (`id_destino`) REFERENCES `usuarios` (`id_usuario`) ON DELETE NO ACTION ON UPDATE NO ACTION;

Muchísimas gracias tío, eres una gran ayuda