Bienvenido

Esta es una comunidad de programadores freelance

Puedes registrarte para acceder a todas las opciones del foro. Una vez registrado, podrás crear nuevas temas, responder y ganar reputación en la comunidad, enviar mensajes privados, y muchas opciones más.


+ Responder Tema + Crear Nuevo Tema
Resultados 1 al 5 de 5

Tema: Tutorial básico de sesiones en PHP 5
  • Share This Thread!
    • Share on Facebook
    1. #1
      Member Fabián Rodríguez va por un camino distinguido Avatar de Fabián Rodríguez
      Fecha de Ingreso
      29 ene, 10
      Ubicación
      Colombia
      Mensajes
      92

      Talking Tutorial básico de sesiones en PHP 5

      Tutorial básico de sesiones en PHP 5
      Autor: Fabián Rodríguez

      En PHP cuando queremos crear sesiones, el lenguaje nos facilita ciertas funciones especificas para eso, y que son muy faciles de manejar. siempre debemos tener en cuenta que para empezar una sesion debemos utilizar la función session_start(); luego de eso como en el ejemplo que veremos a continuación recogeremos un nombre de usuario y contraseña de un formulario ya diseñado:

      Código PHP:
      <?php
      if(isset($_POST['enviar'])){
          
      $username$_POST['username'];
          
      $password $_POST['password'];
      }
      ?>
      <html>
      <head>
      <title>Pruebas sesiones</title>
      </head>
      <body>
      <form name="formulario" method="post" action="usuarioid.php">
      <table>
      <tr>
      <td>Nombre de usuario </td>
      <td><input type="text" name="username" /></td>
      </tr>
      <tr>
      <td>Contrasenia </td>
      <td><input type="password" name="password" /></td>
      </tr>
      <tr align="right">
      <td></td>
      <td><input type="submit" value="Acceder" name="enviar" /></td>
      </tr>
      </table>
      </form>
      </body>
      </html>
      Esto se hará través de un archivo externo, que también puede contener la información que el usuario puede ver. Para hacer una variable de sesion, debemos usar la expresión $_SESSION['variable'] y así la pasaremos de página en página.



      Código PHP:
      <?php
      session_start
      ();
          if(
      $_POST["username"] == "estoesunnombredeusuario" && $_POST["password"] == "estoesunacontraseña123"){
              
      $_SESSION['username'] = $_POST['username'] ;
              
      $_SESSION['password'] = $_POST['password'] ;
              echo 
      "Bienvenido ".$_SESSION['username'];
          }
          else {
              echo 
      "Debes loguearte";
          }
      ?>

    2. #2
      Junior Member Valen va por un camino distinguido
      Fecha de Ingreso
      15 mar, 10
      Mensajes
      9

      Predeterminado

      Hola estoy intentando hacer una zona de usuarios y no me entero nada de las sessiones podrias poner algun ejemplo práctico de sistema de usuarios o algo? enserio por mas que leo parece que estoy bloqueado.
      Valentín Ayesa
      Desarrollo y Diseño Web.

    3. #3
      Member Fabián Rodríguez va por un camino distinguido Avatar de Fabián Rodríguez
      Fecha de Ingreso
      29 ene, 10
      Ubicación
      Colombia
      Mensajes
      92

      Talking

      Cita Iniciado por Valen Ver Mensaje
      Hola estoy intentando hacer una zona de usuarios y no me entero nada de las sessiones podrias poner algun ejemplo práctico de sistema de usuarios o algo? enserio por mas que leo parece que estoy bloqueado.
      COmo podrás ver en el ejemplo anterior, guarda el primer código con cualquier nombre "index.php" puede ser y el segundo como usuarioid.php.

      Verás para las sesiones siempre es necesario declarar al inicio de la página en lo posible la variable global session_start() (A partir de PHP 5 claro está) para indicarle a tu documento de que se esta creando una nueva sesión.

      En este if:

      Código PHP:
      if($_POST["username"] == "estoesunnombredeusuario" && $_POST["password"] == "estoesunacontraseña123"
      Hacemos la comprobación de usuario, por lo que ese nombre de usuario si es correcto pasará a ser parte de la sesión, entocnes lo guardamos com ovariabl de sesión para poderlo pasar entre páginas:

      Código PHP:
      $_SESSION['username'] = $_POST['username'] ; 
      Entonces por ejemplo si tu usuario es un administrador deberías crear una nueva variable que indique el tipo de usuario, en pseudocódigo sería:

      Si (tipo_usuario == Administrador) {
      mostrar "Estos resultados, menús, otras páginas, o enlaces, etc.";
      }

    4. #4
      Junior Member Valen va por un camino distinguido
      Fecha de Ingreso
      15 mar, 10
      Mensajes
      9

      Predeterminado

      Supongo las variables de Sesion las cargo desde la bd no?

      muchas gracias por tu respuesta esta super bien explicado
      Valentín Ayesa
      Desarrollo y Diseño Web.

    5. #5
      Junior Member Will va por un camino distinguido Avatar de Will
      Fecha de Ingreso
      02 mar, 10
      Ubicación
      Trujillo - Perú
      Mensajes
      7

      Predeterminado

      Quisiera añadir que en casos en donde se hace aplicaciones con posibilidad de cuentas de usuario seria bueno usar el

      session_destroy();

      para cuando uno quiera hacer un logout de la aplicacion, eso destruye la session (aunque no borra la cookie que se encarga de eso) cual si usaramos 'unsets' en todas las variables de session, muy util en los "Cerrar Sesión" de las aplicaciones.

      PD: Personalmente creo que una buena aplicación en donde existan cuentas de usuario (y que sea muy grande quizás) debería usar una combinación de Sessiones y Cookies para este tipo de procesos

      Saludos

    + Responder Tema