Programación Web y Scripting > PHP
hacer login para entrar a una pagina
andres69:
vamos a necesitar dos archivos php los ciales son: registro.php y login.php ademas de una tabla.
registro.php
--- Código: PHP ---<? // Configura los datos de tu cuenta $dbhost='mysql5.; $dbusername='a853; $dbuserpass='and'; $dbname='a85'; // Conexión a la base de datos mysql_connect ($dbhost, $dbusername, $dbuserpass); mysql_select_db($dbname) or die("Cannot select database"); // Preguntaremos si se han enviado ya las variables necesarias if (isset($_POST["username"])) { $username = $_POST["username"]; $password = $_POST["password"]; $cpassword = $_POST["cpassword"]; $email = $_POST["email"]; // Hay campos en blanco if($username==NULL|$password==NULL|$cpassword==NULL|$email==NULL) { echo "<center>un campo está vacio.</center>"; }else{ // ¿Coinciden las contraseñas? if($password!=$cpassword) { echo "<center>Las contraseñas no coinciden</center>"; }else{ // Comprobamos si el nombre de usuario o la cuenta de correo ya existían $checkuser = mysql_query("SELECT username FROM users WHERE username='$username'"); $username_exist = mysql_num_rows($checkuser); $checkemail = mysql_query("SELECT email FROM users WHERE email='$email'"); $email_exist = mysql_num_rows($checkemail); if ($email_exist>0|$username_exist>0) { echo "<center>EL nombre de usuario o la cuenta de correo estan ya en uso<center>"; }else{ //Todo parece correcto procedemos con la inserccion $query = "INSERT INTO users (username, password, email) VALUES('$username','$password','$email')"; mysql_query($query) or die(mysql_error()); echo "<center>El usuario $username ha sido registrado de manera satisfactoria.</center>"; echo "<center>Pulsa en login para loguearte.</center>"; } } } } ?> <head><!-- <link href="images/estilo.css" rel="stylesheet" type="text/css">--><body background="images/Fondo.png"><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Registro</title></head> <body><center><h1>Registro panel</h1><form action="registro.php" method="POST"><table style="border:1px solid #000000;"><tr><td align="right">Nombre de usuario: <input type="text" size="15" maxlength="25" name="username"></td></tr><tr><td align="right">Password: <input type="password" size="15" maxlength="25" name="password"></td></tr><tr><td align="right">Repite Password: <input type="password" size="15" maxlength="25" name="cpassword"></td></tr><tr><td align="right">Email: <input type="text" size="15" maxlength="40" name="email"></td></tr><tr><td align="center"><input type="submit" value="Registrar"></td></tr><tr><td align="center"><center><font class="content">[ <a href="login.php">"Login"</a> ]</font></center></td></tr></table></form></center>
login.php
--- Código: PHP ---<?php// Configura los datos de tu cuenta $dbhost='mysql5.; $dbusername='a853s'; $dbuserpass='584'; $dbname='a8'; session_start(); // Conectar a la base de datosmysql_connect ($dbhost, $dbusername, $dbuserpass);mysql_select_db($dbname) or die('Error al intentar conectarse con la BD'); if ($_POST['username']) {//Comprobacion del envio del nombre de usuario y password$username=$_POST['username'];$password=$_POST['password']; if ($password==NULL) {echo "<center>La password no fue enviada<center>";}else{$query = mysql_query("SELECT username,password FROM users WHERE username = '$username'") or die(mysql_error());$data = mysql_fetch_array($query);if($data['password'] != $password) {echo "<center>Login incorrecto<center>";}else{$query = mysql_query("SELECT username,password FROM users WHERE username = '$username'") or die(mysql_error());$row = mysql_fetch_array($query);$_SESSION["s_username"] = $row['username'];header("Location: descargar.html");}}}?><html> <head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Login</title><link href="styles.css" rel="stylesheet" type="text/css" /></head> <body><center><h1>Login Usuario</h1> <center> <form action='login.php' method='POST'><table style='border:1px solid #000000;'><tr><td align='right'>Nombre de usuario: <input type='text' size='15' maxlength='25' name='username'></td></tr><tr><td align='right'>Password: <input type='password' size='15' maxlength='25' name='password'></td></tr><tr><td align='center'><input type="submit" value="Login"><input type="reset" value="Borrar"></td></tr><tr><td align='center'><center><font class="content">[ <a href="registro.php">"Regístrate"</a> ]</font></center></td></tr></table></form></body></html>
tabla
--- Código: SQL ---CREATE TABLE `users` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `username` VARCHAR(30) NOT NULL, `password` VARCHAR(20) NOT NULL, `email` VARCHAR(40) NOT NULL, PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
Espero que este ejempo te quede claro y si no pues dime y te ayudo.
Suerte!!!
gpchip:
Ok, muchas gracias, me ha servido, solo me faltaba la estructura de la tabla, pero gracias por dejarlo todo bien claro, seguro que ha alguien mas le vendrá de maravilla. Lo dicho Gracias :beer:
andres69:
de nada gpchip :D
carloslon19:
muchas gracias por estos aportes, pero que tal si lo mejoramos adicionandole niveles de acceso
yo estoy iniciando en esto del php pero quisiera proponer el desarrollo de toda una aplicacion para poder aprender bien a realizar todo y que ojala se presentenuevos casos
andres69:
carloslon yo tengo algo similar a lo que pides pero es en Visual BAsic y pues aviame si puedes cuando termines tu trabajo con php para checarlo
Saludos! :good:
Navegación
[#] Página Siguiente
[*] Página Anterior
Ir a la versión completa