Diferencia entre revisiones de «Usuario:ManuelRomero/php/sesiones»
Línea 209: | Línea 209: | ||
*Explicación funcional de las páginas | *Explicación funcional de las páginas | ||
;Login (login.php). | ;Login (login.php). | ||
− | :Su función es autentificar al usuario de la aplicación web. Todos los usuarios de la aplicación deberán autentificarse utilizando esta página antes de poder acceder al resto de páginas. | + | :Su función es autentificar al usuario de la aplicación web. |
+ | :Todos los usuarios de la aplicación deberán autentificarse utilizando esta página antes de poder acceder al resto de páginas. | ||
;Listado de productos (productos.php). | ;Listado de productos (productos.php). | ||
: Presenta un listado de los productos de la tienda, y permite al usuario seleccionar aquellos que va a comprar. | : Presenta un listado de los productos de la tienda, y permite al usuario seleccionar aquellos que va a comprar. | ||
Línea 215: | Línea 216: | ||
:Muestra un resumen de los productos escogidos por el usuario para su compra y da acceso a la página de pago. | :Muestra un resumen de los productos escogidos por el usuario para su compra y da acceso a la página de pago. | ||
;Pagar (pagar.php). | ;Pagar (pagar.php). | ||
− | :Una vez confirmada la compra, la última página debería ser la que permitiera al usuario escoger el método de pago y la forma de envío. En esta aplicación simplemente mostrará un mensaje de tipo "Gracias por su compra" y ofrecerá un enlace para comenzar una nueva compra. | + | :Una vez confirmada la compra, la última página debería ser la que permitiera al usuario escoger el método de pago y la forma de envío. |
+ | :En esta aplicación simplemente mostrará un mensaje de tipo "Gracias por su compra" y ofrecerá un enlace para comenzar una nueva compra. | ||
;Logoff (logoff.php). | ;Logoff (logoff.php). | ||
− | :Esta página desconecta al usuario de la aplicación y redirige al usuario de forma automática a la pantalla de autentificación. No muestra ninguna información en pantalla, por lo que no es visible para el usuario. | + | :Esta página desconecta al usuario de la aplicación y redirige al usuario de forma automática a la pantalla de autentificación. |
+ | : No muestra ninguna información en pantalla, por lo que no es visible para el usuario. | ||
+ | ====login.php==== | ||
+ | *Usando la base de datos de usuarios validamos el usuario | ||
+ | Ŝi queremos dar de alta más usuarios, se hará de forma administrativa directemente en la base de datos, es decir los usuarios ya existen en la base de datos, en nuestra aplicación no se pueden registrar (posible mejora | ||
+ | *Aquí ponemos la parte de html para empezar | ||
+ | *Observar una variable llamada error que visualiza información en caso de que algo no vaya bien | ||
+ | *El posible valor de esa variable ne el código php | ||
+ | <source lang=html4Strinct> | ||
+ | <!DOCTYPE html> | ||
+ | <!-- Desarrollo Web en Entorno Servidor --> | ||
+ | <!-- Ejemplo Tienda Web: login.php --> | ||
+ | <html> | ||
+ | <head> | ||
+ | <meta http-equiv="content-type" content="text/html; charset=UTF-8"> | ||
+ | <title>Ejemplo Tema 4: Login Tienda Web</title> | ||
+ | <link href="tienda.css" rel="stylesheet" type="text/css"> | ||
+ | </head> | ||
+ | <body> | ||
+ | <div id='login'> | ||
+ | <form action='login.php' method='post'> | ||
+ | <fieldset > | ||
+ | <legend>Login</legend> | ||
+ | <div><span class='error'><?php echo $error; ?></span></div> | ||
+ | <div class='campo'> | ||
+ | <label for='usuario' >Usuario:</label><br/> | ||
+ | <input type='text' name='usuario' id='usuario' maxlength="50" /><br/> | ||
+ | </div> | ||
+ | <div class='campo'> | ||
+ | <label for='password' >Contraseña:</label><br/> | ||
+ | <input type='password' name='password' id='password' maxlength="50" /><br/> | ||
+ | </div> | ||
+ | |||
+ | <div class='campo'> | ||
+ | <input type='submit' name='enviar' value='Enviar' /> | ||
+ | </div> | ||
+ | </fieldset> | ||
+ | </form> | ||
+ | </div> | ||
+ | </body> | ||
+ | </html> | ||
+ | </html> | ||
+ | </source> | ||
Revisión de 18:54 19 nov 2014
Trabajo en proceso, espera cambios frecuentes. Tu ayuda y retroalimentación son bienvenidos. Ver página de charlas. |
SSID de la sesión
http://www.misitioweb.com/tienda/listado.php&PHPSESSID=34534fg4ffg34ty
Configuración
Creando la sesión
Tip: Cuando se hace un cambio de estado (login, cambio de permisos, ...): regenerar id.
session_regenerate_id()
{{Ejemplo <?php // Iniciamos la sesión o recuperamos la anterior sesión existente session_start(); // Comprobamos si la variable ya existe if (isset($_SESSION['visitas'])) $_SESSION['visitas']++; else $_SESSION['visitas'] = 0; ?> }}
<?php // Iniciamos la sesión o recuperamos la anterior sesión existente session_start(); // En cada visita añadimos un valor al array "visitas" $_SESSION['visitas'][] = mktime(); ?> Eliminando la sesion
Elimina completamente la información de la sesión del dispositivo de almacenamiento.
Ejemplo pŕáctico
login.php
Ŝi queremos dar de alta más usuarios, se hará de forma administrativa directemente en la base de datos, es decir los usuarios ya existen en la base de datos, en nuestra aplicación no se pueden registrar (posible mejora
Idioma no válido. Necesita especificar un idioma como esto: <source lang="html4strict">...</source> lenguajes soportados para sintaxis remarcada: 4cs, 6502acme, 6502kickass, 6502tasm, 68000devpac, abap, actionscript, actionscript3, ada, algol68, apache, applescript, apt_sources, arm, asm, asp, asymptote, autoconf, autohotkey, autoit, avisynth, awk, bascomavr, bash, basic4gl, bf, bibtex, blitzbasic, bnf, boo, c, c_loadrunner, c_mac, caddcl, cadlisp, cfdg, cfm, chaiscript, cil, clojure, cmake, cobol, coffeescript, cpp, cpp-qt, csharp, css, cuesheet, d, dcl, dcpu16, dcs, delphi, diff, div, dos, dot, e, ecmascript, eiffel, email, epc, erlang, euphoria, f1, falcon, fo, fortran, freebasic, freeswitch, fsharp, gambas, gdb, genero, genie, gettext, glsl, gml, gnuplot, go, groovy, gwbasic, haskell, haxe, hicest, hq9plus, html4strict, html5, icon, idl, ini, inno, intercal, io, j, java, java5, javascript, jquery, kixtart, klonec, klonecpp, latex, lb, ldif, lisp, llvm, locobasic, logtalk, lolcode, lotusformulas, lotusscript, lscript, lsl2, lua, m68k, magiksf, make, mapbasic, matlab, mirc, mmix, modula2, modula3, mpasm, mxml, mysql, nagios, netrexx, newlisp, nsis, oberon2, objc, objeck, ocaml, ocaml-brief, octave, oobas, oorexx, oracle11, oracle8, oxygene, oz, parasail, parigp, pascal, pcre, per, perl, perl6, pf, php, php-brief, pic16, pike, pixelbender, pli, plsql, postgresql, povray, powerbuilder, powershell, proftpd, progress, prolog, properties, providex, purebasic, pycon, pys60, python, q, qbasic, rails, rebol, reg, rexx, robots, rpmspec, rsplus, ruby, sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, spark, sparql, sql, stonescript, systemverilog, tcl, teraterm, text, thinbasic, tsql, typoscript, unicon, upc, urbi, uscript, vala, vb, vbnet, vedit, verilog, vhdl, vim, visualfoxpro, visualprolog, whitespace, whois, winbatch, xbasic, xml, xorg_conf, xpp, yaml, z80, zxbasic <!DOCTYPE html> <!-- Desarrollo Web en Entorno Servidor --> <!-- Ejemplo Tienda Web: login.php --> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Ejemplo Tema 4: Login Tienda Web</title> <link href="tienda.css" rel="stylesheet" type="text/css"> </head> <body> <div id='login'> <form action='login.php' method='post'> <fieldset > <legend>Login</legend> <div><span class='error'><?php echo $error; ?></span></div> <div class='campo'> <label for='usuario' >Usuario:</label><br/> <input type='text' name='usuario' id='usuario' maxlength="50" /><br/> </div> <div class='campo'> <label for='password' >Contraseña:</label><br/> <input type='password' name='password' id='password' maxlength="50" /><br/> </div> <div class='campo'> <input type='submit' name='enviar' value='Enviar' /> </div> </fieldset> </form> </div> </body> </html> </html>
|