Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] metodo get + php + mysql DB

Estas en el tema de metodo get + php + mysql DB en el foro de PHP en Foros del Web. Estoy haciendo manualmente un sistema de mensajes. He creado una función para la lectura de mensajes donde he comentado todo el código y en mayúsculas+negrita ...
  #1 (permalink)  
Antiguo 17/02/2013, 19:52
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 12 años
Puntos: 84
Pregunta metodo get + php + mysql DB

Estoy haciendo manualmente un sistema de mensajes.

He creado una función para la lectura de mensajes donde he comentado todo el código y en mayúsculas+negrita al final he comentado donde creo que se encuentra el problema y que no se solucionar. Si alguien me puede ayudar porfavor, gracias.

P.D: que el código lo utilice quien quiera para lo que quiera.

Código PHP:
Ver original
  1. /////////////////////////////////////////////
  2.     /*presenta los mensajes recibidos sin leer**/
  3.     /////////////////////////////////////////////  
  4.     function mensajes_recibidos()
  5.     {
  6.         //consulta a la base de datos//
  7.         $consulta="SELECT * FROM mensajes";//selecciona todo de mensajes
  8.         $result_conexion=Conectar($consulta); //iguala $result_conexion al resultado de $consulta como parámetro de la funcion Conectar
  9.         while($fila=mysql_fetch_array($result_conexion)) //mientras haya filas iguala $fila al resultado de la consulta
  10.         {
  11.             if($fila['receptor']==$_SESSION['usuario']) //si $fila es igual a la sesion de usuario //
  12.             {                                           //carga tantos emisores y receptores como encuentre en la DB//
  13.             ?>
  14.                 <table border="0">
  15.                     <tr>
  16.                         <td>
  17.                         De:
  18.                         </td>
  19.                         <td>
  20.                             <?php echo $fila['emisor']?>
  21.                         </td>
  22.                         <td>
  23.                         A las:
  24.                         </td>
  25.                         <td>
  26.                             <?php echo $fila['hora_fecha_escrito']?>
  27.                         </td>
  28.                     </tr>
  29.                    
  30.                     <tr>
  31.                         <td>
  32.                             <a href="tu_cuenta.php?mensaje_leido=<?php echo $fila['id']?>"/>Leer</a> <!-- el while asigna tantas id encontradas en la DB al get mensaje_leido-->
  33.                            
  34.                            
  35.                         </td>
  36.                     </tr>
  37.                 </table>
  38.             <?php
  39.             }
  40.         }
  41.         [B]////////////EL PROBLEMA ESTÁ AQUÍ, NO ENTRA EN ESTA CONDICIÓN por lo tanto no muestra el mensaje después de haber pulsado en el enlace anterior 'leer' generado en el WHILE , lo he probado fuera de la función y sí se muestra el mensaje en la parte superior de la web en local, utilizo xampp+dreamweaver/////////////////////////////[/B]
  42.         if(isset($_GET['mensaje_leido'])) //si existe el get mensaje_leido
  43.         {   // primero realiza una consulta//
  44.            
  45.             $consulta="SELECT * FROM mensajes";
  46.             $result_conexion=Conectar($consulta);
  47.             $fila=mysql_fetch_array($result_conexion);
  48.            
  49.             if($_GET['mensaje_leido']==$fila['id']) //si el get es igual al id encontrado en DB//
  50.             {
  51.                 //mostrará el mensaje encontrado correspondiente al mensaje//
  52.                 echo $fila['mensaje'];
  53.                        
  54.             }
  55.         }  
  56.     }
  #2 (permalink)  
Antiguo 18/02/2013, 01:13
 
Fecha de Ingreso: octubre-2012
Mensajes: 135
Antigüedad: 12 años, 1 mes
Puntos: 8
Respuesta: metodo get + php + mysql DB

En las lineas que has puesto en negrita, falta las ;
Estas se ponen al final de cada sentencia.
<?php echo $fila['emisor'];?>
  #3 (permalink)  
Antiguo 18/02/2013, 05:52
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 12 años
Puntos: 84
Respuesta: metodo get + php + mysql DB

Cita:
Iniciado por botxii Ver Mensaje
En las lineas que has puesto en negrita, falta las ;
Estas se ponen al final de cada sentencia.
<?php echo $fila['emisor'];?>
Gracias, he corregido ese detalle pero el problema persiste.

No entiendo por qué si pongo la condicional fuera de la función sí funciona pero si la pongo dentro de la función no muestra el mensaje.

¿tiene algo que ver el hecho de que esa función es llamada por un enlace en otra condición?

Gracias.

Etiquetas: metodo, mysql, select, sql
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:20.