Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Crear una sesión en PHP ($_SESSION)
#1
Últimamente estuve muy enfocado en lo que éste lenguaje de programación que es uno de los padres de ello, derivado de C. Así que a medida de que vaya haciendo tutoriales, que por cierto, son bastante fáciles para los "principiantes" y también para los que saben programación van a decir: "Esto es hiper mega fácil ¿por qué carajo publicas ésta idiotes?", esa misma es la gente genérica que sabe y no quiere enseñar.

Para no seguir desviándome del tema, comienzo con éste simple tutorial de cómo crear una SESSION. Ahora bien, ¿Para qué carajo sirve SESSION? ¿Qué es? ¿Cómo se utiliza? ¿Ejemplos...? ¡Lucas me estoy volviendo [email protected]!

¿Para qué sirve y qué es?
Bueno, una SESSION es una sesión que se crea y guarda los datos en PHP para poder ser mostrados luego. Para poder crear una sesión es importante tener conocimientos de lo que es un formulario, algo simple, que ya lo deben saber; por cierto, si no lo saben les voy a mostrar un formulario simple con HTML en este tutorial.

Vamos a crear un ejemplo y de ahí, voy a ir explicando
Antes que nada vamos a crear un formulario simple, que no tenga muchos datos para poder dar un ejemplo. Claramente después ustedes le van a agregar un diseño con CSS, y demás. Vamos a eso:

index.php
Código:
<!DOCTYPE html>
<?php
    session_start(); // al volver al index si existe una session, esta sera destruida, existen formas de conservarlas como con un if(session_start()!= NULL). Pero por el momento para el ejemplo no es valido.
    session_destroy();  // Se destruye la session existente de esta forma no permite el duplicado.
?>

<html lang="es">
    <head>
            <title>Crear una sesión</title>
    </head>
    
    <body>
            <h1>Creación de una sesión</h1>
            <form action="./session.php" method="POST">
                    <p>
                            <label>Nombre de usuario en CodeJobs</label> <br />
                            <input type="text" name="username" />
                    </p>
    
                    <p>
                            <input type="submit" value="Crear sesión" />
                    </p>
            </form>
    </body>
</html>

Los campos creados son: Nombre de usuario, Edad, Correo electrónico y una área de texto preguntando por qué estás en CodeJobs.

El formulario crea una acción a la que va a llevar hacia el archivo PHP ./session.php que está en la raíz. Ahora vamos a crear ese archivo y a explicarlo:

session.php
Código:
<?php
    /* Empezamos la sesión */
    session_start();
    
    /* Creamos la sesión */
    $_SESSION['username'] = $_POST['username'];
    
    /* Si no hay una sesión creada, redireccionar al index. */
    if(empty($_SESSION['username'])) { // Recuerda usar corchetes.
        header('Location: index.html');
    } // Recuerda usar corchetes
?>
    
<!DOCTYPE html>
<html lang="es">
    <head>
            <title>Creamos y mostramos la sesión</title>
    </head>
    
    <body>
        <div class="c1">
            <h2>Mostramos los datos guardados</h2>
            
            <section>
                <p>
                    Tu nombre de usuario es <?=$_SESSION['username'];?>
                </p>
            </section>
        </div>

        <div class="c2">
            <section>
                <p>
                    <a href="./index.html">Eliminar sesión</a> <!-- de esta forma se crea la nueva session, sin necesidad de crear otro script en php. -->
                </p>
            </section>
        </div>
    </body>
</html>

Con session_start(); indicamos a PHP que vamos a crear una nueva sesión y éste indica el inicio de ella.

Luego creamos la sesión de la siguiente manera:
Código:
$_SESSION['campodelform'] = $_POST['campodelformquerecogemos'];

Para mostrar los datos lo único que hice es mostrarlos con:
Código:
<?=$_SESSION['nombredelcampo']?>

Que sería lo mismo que:
Código:
<?php echo $_SESSION['nombredelcampo']; ?>

Solo que se utiliza la etiqueta corta de PHP (short_tag).

Por último, lo que hacemos con destroy.php es destruir la sesión para poder crear una nueva. Si la sesión está vacía (empty) se redirecciona a la página principal.

Bueno, espero que se les haga fácil, y cualquier duda y/o inquietud o sugerencia, háganme saber.

Un saludo. Gran sonrisa
WWW
#2
Esto es muy útil para pasar variables post de una acción a otra, para cuando no queremos que los datos se vean vía GET xD aunque al igual que todas las variables que se guardan, debe ser asegurada y comprobada un millón de veces para ver si es lo que esperábamos recibir jajaj gracias!
#3
no me acordaba de estos atributos de PHP me ha servido para desempolvar un poco mis conocimientos, gracias Sonrisa
WWW
#4
Interesante, ¿conviene más las sesiones o las cookies? Saludos
matt.Ángel


Posibles temas similares...
Tema Autor Respuestas Vistas Último mensaje
  Cómo crear un logotipo animado en 3ds Max Sprystate 2 70 01-08-2018, 09:05 AM
Último mensaje: easy english
  CREAR PROGRAMA DE AFILIADOS alieninc 2 212 04-02-2018, 01:49 AM
Último mensaje: ReyNexo23
  Crear sitio web/blog Vero190 15 536 14-01-2018, 04:44 AM
Último mensaje: ReyNexo23
  Mobirise - Crear sitios Moviles de manera facil y gratis metalfuck 3 2,387 03-11-2015, 12:56 AM
Último mensaje: Caoba
  Como crear un Código de Barras en PHP torgar22 1 565 25-03-2015, 04:33 AM
Último mensaje: garcon
  [PHP] Código para crear y eliminar una base de datos de MySQL desde PHP torgar22 5 660 27-02-2015, 12:57 AM
Último mensaje: yayito21
  Crear contraseñas seguras Netohg 43 2,496 06-02-2015, 02:45 AM
Último mensaje: Shirow_Aramaki
  Crear un mapa con puntos modificables fácilmente por cualquiera kakashi-sensei 7 687 27-01-2015, 08:02 PM
Último mensaje: kakashi-sensei
  Crear colores aleatariamente con PHP Dark_Soul 4 491 30-12-2014, 01:21 AM
Último mensaje: Dark_Soul
  Cómo crear cursores personalizados con CSS imgur 1 461 29-11-2014, 06:10 PM
Último mensaje: Restia



Usuarios navegando en este tema: 1 invitado(s)