Ver Mensaje Individual
  #15 (permalink)  
Antiguo 20/09/2010, 09:00
Avatar de rickyper
rickyper
 
Fecha de Ingreso: abril-2009
Mensajes: 182
Antigüedad: 15 años
Puntos: 10
Respuesta: Problema con variables de sesion

te pongo un ejemplo de uso esta bien claro:
Código PHP:
Ver original
  1. <?PHP
  2.  
  3. // Iniciar sesión
  4.  
  5. // Si se ha enviado el formulario
  6.    $usuario = $_REQUEST['usuario'];
  7.    $clave = $_REQUEST['clave'];
  8.    if (isset($usuario) && isset($clave))
  9.    {
  10.  
  11.    // Comprobar que el usuario está autorizado a entrar
  12.       $conexion = mysql_connect ("localhost", "cursophp", "")
  13.          or die ("No se puede conectar con el servidor");
  14.       mysql_select_db ("lindavista")
  15.          or die ("No se puede seleccionar la base de datos");
  16.       $salt = substr ($usuario, 0, 2);
  17.       $clave_crypt = crypt ($clave, $salt);
  18.       $instruccion = "select usuario, clave from usuarios where usuario = '$usuario'" .
  19.          " and clave = '$clave_crypt'";
  20.       $consulta = mysql_query ($instruccion, $conexion)
  21.          or die ("Fallo en la consulta");
  22.       $nfilas = mysql_num_rows ($consulta);
  23.       mysql_close ($conexion);
  24.  
  25.    // Los datos introducidos son correctos
  26.       if ($nfilas > 0)
  27.       {
  28.          $usuario_valido = $usuario;
  29.          // Con register_globals On
  30.          // session_register ("usuario_valido");
  31.          // Con register_globals Off
  32.          $_SESSION["usuario_valido"] = $usuario_valido;
  33.       }
  34.    }
  35. ?>
  36.  
  37. <!DOCTYPE HTML PUBLIC "-//W3C/DTD HTML 4.0//EN"
  38.    "http://www.w3.org/TR/html4/strict.dtd">
  39. <HTML LANG="es">
  40. <HEAD>
  41. <TITLE>Gestión de noticias. Página de entrada</TITLE>
  42. <LINK REL="stylesheet" TYPE="text/css" HREF="estilo.css">
  43. </HEAD>
  44.  
  45. <BODY>
  46.  
  47. <?PHP
  48. // Sesión iniciada
  49.    if (isset($_SESSION["usuario_valido"]))
  50.    {
  51. ?>
  52.  
  53. <H1>Gestión de noticias</H1>
  54. <HR>
  55.  
  56. <UL>
  57.    <LI><A HREF="consulta_noticias.php">Consultar noticias</A>
  58.    <LI><A HREF="inserta_noticia.php">Insertar nueva noticia</A>
  59.    <LI><A HREF="elimina_noticia.php">Eliminar noticias</A>
  60. </UL>
  61.  
  62. <HR>
  63.  
  64. <P>[ <A HREF='logout.php'>Desconectar</A> ]</P>
  65.  
  66. <?PHP
  67.    }
  68.  
  69. // Intento de entrada fallido
  70.    else if (isset ($usuario))
  71.    {
  72.       print ("<BR><BR>\n");
  73.       print ("<P ALIGN='CENTER'>Acceso no autorizado</P>\n");
  74.       print ("<P ALIGN='CENTER'>[ <A HREF='login.php'>Conectar</A> ]</P>\n");
  75.    }
  76.  
  77. // Sesión no iniciada
  78.    else
  79.    {
  80.       print("<BR><BR>\n");
  81.       print("<P CLASS='parrafocentrado'>Esta zona tiene el acceso restringido.<BR> " .
  82.          " Para entrar debe identificarse</P>\n");
  83.  
  84.       print("<FORM CLASS='entrada' NAME='login' ACTION='login.php' METHOD='POST'>\n");
  85.  
  86.       print("<P><LABEL CLASS='etiqueta-entrada'>Usuario:</LABEL>\n");
  87.       print("   <INPUT TYPE='TEXT' NAME='usuario' SIZE='15'></P>\n");
  88.       print("<P><LABEL CLASS='etiqueta-entrada'>Clave:</LABEL>\n");
  89.       print("   <INPUT TYPE='PASSWORD' NAME='clave' SIZE='15'></P>\n");
  90.       print("<P><INPUT TYPE='SUBMIT' VALUE='entrar'></P>\n");
  91.  
  92.       print("</FORM>\n");
  93.  
  94.       print("<P CLASS='parrafocentrado'>NOTA: si no dispone de identificación o tiene problemas " .
  95.          "para entrar<BR>póngase en contacto con el " .
  96.          "<A HREF='MAILTO:webmaster@localhost'>administrador</A> del sitio</P>\n");
  97.    }
  98. ?>
  99.  
  100. </BODY>
  101. </HTML>
__________________
www.granideamillonaria.com