Ver Mensaje Individual
  #4 (permalink)  
Antiguo 26/05/2014, 06:21
Avatar de Italico76
Italico76
 
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 7 meses
Puntos: 292
Respuesta: Duda con SESIONES en PHP.

En el servidor se crean archivos de session que identifican al usuario, logicamente la session como tal no sabe a priori lo que tu no le hayas dicho como si en la DB tiene algun Id_usuario por ejemplo.

Tu guardas eso o lo trabajas algo asi:

Código PHP:
Ver original
  1. <?php
  2.  
  3. include "models";
  4.  
  5. if (!isset($_SESSION['id_usuario'])){
  6.     header ("Location: logueo.php");
  7.     exit();
  8. }
  9.  
  10. $id_usuario = $_SESSION['id_usuario'])){
  11.    
  12.     echo 'Bienvenido '.get_username_from_id($id_usuario);
  13. }

Donde models.php es donde reside la funcion get_username_from_id() que recupera de la DB el nombre del usuario y demas datos necesites con el id_usuario


----x----


MAS REAL.......seria algo ASI:

Código PHP:
Ver original
  1. <?php
  2. // en tu template*
  3.  
  4. include "models";
  5.  
  6. if (!isset($_SESSION['username'])){
  7.     header ("Location: logueo.php");
  8.     exit();
  9. }
  10.  
  11. // ejemplo: Bienvenido italico76
  12. echo 'Bienvenido '.get_username_from_id($id_usuario);

+

Código PHP:
Ver original
  1. <?php
  2. // en logueo.php
  3.  
  4. include "models";
  5.  
  6. // recupero datos de un formulario donde se introduce user y pass:
  7.  
  8. $sql = "SELECT id_usuario form usuarios where username='$username' and pass=md5('$pass')"
  9. //.. mysqli_query()... mysqli_result ().. bla bla
  10.  
  11. // si ingreso con username, me almaceno el id_usuario que es una PRIMARY KEY y obviamente UNIQUE y me sirve para recuperar cualquier otro dato de otras tablas relacionadas tambien
  12.  
  13. $_SESSION['id_usuario'] = $row->["id_usuario"];
  14. // si quiero me traigo otros datos como preferencias y demas de Usuarios:
  15. $_SESSION['avatar'] = $row->["avatar"];
  16. $_SESSION['skin_template'] = $row->["skin"];
  17. // ...

+

Código PHP:
Ver original
  1. <?php
  2. // en otra 'pagina'
  3.  
  4. include "models";
  5.  
  6. // Cuando necesites hacer una consulta en la DB
  7.  
  8. $sql = "SELECT campo, ..campoN  form la_tabla_relacionada where id_usuario='{$_SESSION['id_usuario']}'";
  9. //.. mysqli_query()... mysqli_result ().. bla bla
__________________
Salu2!

Última edición por Italico76; 26/05/2014 a las 06:35