Foros del Web » Programando para Internet » PHP »

Problema de consultas SQL

Estas en el tema de Problema de consultas SQL en el foro de PHP en Foros del Web. Hola gente espero esten bien!. tengo un problema y es que cuando yo envio un mensaje al usuario este aparte de mostrarselo a quien se ...
  #1 (permalink)  
Antiguo 12/10/2015, 16:27
 
Fecha de Ingreso: agosto-2015
Ubicación: Rosario - Argentina
Mensajes: 418
Antigüedad: 4 años, 3 meses
Puntos: 11
Problema de consultas SQL

Hola gente espero esten bien!.
tengo un problema y es que cuando yo envio un mensaje al usuario este aparte de mostrarselo a quien se lo he enviado tambien me lo muestra ami....
y si ven el codigo yo le estoy diciendo que se lo muestre solo al usuario que tenga la ID del codigo..
¿Cual o donde esta el error?
Tambien el mensaje desaparece una vez que yo (quien envia el mensaje) cierro e inicio sesion.
¿porque ocurre esto?

Lo que yo busco es que directamente le llegue al usuario cuya id sea la del mensaje, no a mi..
¿Podrian orientarme un poco?

Codigo que mostrara la lista de mensajes:
Código PHP:
<?php
        
require('include/config.php');
        
session_start();
        
mysqli_select_db($conexion,$db_web)or die("Error al seleccionar la base de datos.");
        
$ver_mensajes mysqli_query($conexion,"SELECT * FROM mensajes WHERE id='".$_SESSION['id']."'");
        
$resultado_ver mysqli_num_rows($ver_mensajes)or die(mysqli_error($conexion));
        while(
$mostrar_mensajes mysqli_fetch_array($ver_mensajes,MYSQL_ASSOC)){
            
$inc $mostrar_mensajes['inc'];
            
$id $mostrar_mensajes['id'];
            
$titulo $mostrar_mensajes['titulo'];
            
$contenido $mostrar_mensajes['contenido'];
            
$remitente $mostrar_mensajes['remitente'];
            
$visto $mostrar_mensajes['visto'];
            if(
$visto==0){
                
$visto "No";
            }else{
                
$visto "Si";
            }
            echo 
"<tr id='lista_mensajes'>";
            echo 
"<td width='15%'>".$remitente."</td>";
            echo 
"<td width='20%'>"."<a href='ver_mensaje.php?inc=".$inc."' target='_blank'>".$titulo."</a></td>"
            echo 
"<td width='60%'>".substr($contenido,0,36)."..."."</td>";
            echo 
"<td width='5%' id='visto'>".$visto."</td>";
            echo 
"</tr>";
    }
        
?>
Espero puedan ayudarme y gracias de antemano

Última edición por TrinityCore; 12/10/2015 a las 17:32
  #2 (permalink)  
Antiguo 12/10/2015, 17:46
 
Fecha de Ingreso: marzo-2011
Mensajes: 70
Antigüedad: 8 años, 9 meses
Puntos: 2
Respuesta: Problema de consultas SQL

que es lo que guardas en .$_SESSION['id'] ? por lo que entiendo debería de ser el id del mensaje que guardas en la base de datos.

Cada que cierras sesion. las sesiones se destruyen, como va a saber php que id es el mensaje el cual quieres traer?
si quieres cerrar sesion y que los usuarios vean sus mensajes recibidos anteriormente deberias traer todos los mensajes asociados al id que del usuario , no al id del mensaje.
  #3 (permalink)  
Antiguo 12/10/2015, 18:40
 
Fecha de Ingreso: agosto-2015
Ubicación: Rosario - Argentina
Mensajes: 418
Antigüedad: 4 años, 3 meses
Puntos: 11
Respuesta: Problema de consultas SQL

Cita:
Iniciado por June310 Ver Mensaje
que es lo que guardas en .$_SESSION['id'] ? por lo que entiendo debería de ser el id del mensaje que guardas en la base de datos.

Cada que cierras sesion. las sesiones se destruyen, como va a saber php que id es el mensaje el cual quieres traer?
si quieres cerrar sesion y que los usuarios vean sus mensajes recibidos anteriormente deberias traer todos los mensajes asociados al id que del usuario , no al id del mensaje.
No.., $_SESSION['id'] guarda el dato de la ID del usuario cuando este inicia sesion...

El los datos del mensaje no se guardan en sesiones, sino en variables...
El id del mensaje esta guardado en la variable $id

Ahi lo que le estoy diciendo es: "Si el $id del mensaje es igua a la $_SESSION['id'] del usuario, entonces muestrale el mensaje., pero solo al usuario cuya sesion sea la misma que el id del mensaje"

Etiquetas: html, mysql, select, sql, usuarios
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 22:30.