You are on page 1of 3

Mini Tutorial de Sesiones en PHP

---Formulario Bsico en HTML para Log In---(Index.html) <!DOCTYPE html> <html> <title>Login Ejemplo</title> </head> <body> <form method="POST" action="login.php"> <label for="Usuario">Usuario:</label> <Input type = "text" name=""Usuario" id="Usuario"/> <label for="Pass">Contrasea</label> <input type="Password" name="Pass" id="Pass"/> <input type="submit" value="Ingresar"/> </form> </body> </html> Explicacin rudimentaria de la etiqueta Form: La primera lnea es: <form method ="POST" action="login.php"> Esto significa, que vamos a usar elementos de formularios, que enviarn datos a travs del mtodo POST (en mi caso me gusta mas que el GET, porque evita que se haga un Choclo enorme la URL, a diferencia del GET que te hace un universo de variables con "&" en la URL, y el POST es ms utilizado en los form, el GET, no es necesario un form). y la accin, es decir a donde va a envar esas variables, va a ser a "login.php". La segunda lnea dice: <label= for="Usuario">Usuario:</label> Label = Etiqueta (Eso cae de maduro ya) For = "Usuario"...bueno esto es algo q a mi me parece interesante estticamente, este Form dice que al clickear sobre el hace foco en algo llamado "Usuario", y que lo que sera el Caption en VB6 o el text de Vb.net, de este label ser "Usuario:" La tercera lnea dice: <Input type = "text" name=""Usuario" id="Usuario"/> Esto significa q vamos a meter un textbox, cuyo nombre es "Usuario" y en la DB se identifica como "Usuario", y ac es donde har foco ese for de la lnea anterior ;). Cuarta y Quinta linea: Tienen la misma lgica q la tercera y segunda. Sexta linea: <input type="submit" value="Ingresar"/> Agregamos un botn ("submit") cuyo caption o text = a "Ingresar"

---Primer pgina PHP ---(Login.php) Pgina 1

Mini Tutorial de Sesiones en PHP <? $Usuario=$_POST["Usuario"]; $Pass =$_POST["Pass"]; $Cnn=mysql_connect("LocalHost:81","Root","TuPassword"); mysql_select_db("EjemploLoginPhP",$cnn); $SQL = "Select IUsuario From Usuarios WHERE nUsuario = '$Usuario' AND pUsuario = '$Pass'" $Comparar = mysql_query($SQL); if(mysql_num_rows($Comparar)>0) { $IUsuario = mysql_result($Comparar,0); setcookie("EjemploLogIn_Userid","$IUsuario",time()+3600); header("Location:inicio.php"); } else echo "Usuario o Password incorrecto"; header("Location:Index.html") ?> Bsicamente esta pgina php, no es una pgina visible al cliente, ac lo que se hace es TOma las variables que enva el form de index.html a travs del mtodo POST: $Usuario=$_POST["Usuario"]; $Pass =$_POST["Pass"]; Tmb tenemos el COnnection string, por asi decirlo que conecta con la db MySql: $Cnn=mysql_connect("LocalHost:81","Root","TuPassword"); (Root y TuPassword, es para acceder al localHost) Despus, enviamos el connection string para ingresar al Server, el localhost(XAMP o WAMP depende q programa usen) y al MySQL seleccionamos la DB con la q queremos trabajar: mysql_select_db("EjemploLoginPhP",$cnn); Luego tenemos la lnea que es un query q se enva al MySQL: $SQL = "Select IUsuario From Usuarios WHERE nUsuario = '$Usuario' AND pUsuario = '$Pass'" Seguimos con la emision de esa Query: $Comparar = mysql_query($SQL); Y por ltimo tenemos un bloque If: que dice lo siguiente: si el nmero de filas encontradas por la Query enviada es mayor a 0, es porque exste ese usuario, generamos una cookie para q el server por asi decirlo sepa de tu conexin, y bueno con la Id Usuario, y la duracin de la misma, y de direcciona alinicio.php (Header-...) SINO mensaje "Usuario o Password incorrecto" y volvemos al index(donde est el form). ---Segunda Pgina PHP---(Inicio.php) Pgina 2

Mini Tutorial de Sesiones en PHP <? if (isset($_COOKIE["EjemploLogin_Userid"])) echo "Usuario ha iniciado sesin"; else echo "Ud. no ha iniciado Sesin" <a ref="Index.html" </a> ?> Este cdigo es muy sencillo, es un If que dice: SI la COokie no es nula, se informa que se ha inciado sesin antes, sino no :D

Pgina 3

You might also like