Foros del Web » Creando para Internet » Diseño web »

Ayuda con script login simple

Estas en el tema de Ayuda con script login simple en el foro de Diseño web en Foros del Web. Holas Necesitaba proteger una pagina html en mi sitio y buscando una forma rapida y sencilla encontre este script: Código: /* ------------------------------------------------------------------- Login Script Version ...
  #1 (permalink)  
Antiguo 26/08/2008, 13:32
 
Fecha de Ingreso: junio-2007
Mensajes: 5
Antigüedad: 16 años, 10 meses
Puntos: 0
Ayuda con script login simple

Holas

Necesitaba proteger una pagina html en mi sitio y buscando una forma rapida y sencilla encontre este script:

Código:
/*
-------------------------------------------------------------------
 Login Script Version 1.9
 By H G Laughland 
 http://www.laughland.biz

This script can be used free of charge and may only be
redistributed the same way. The disclaimer must remain
intact.

DISCLAIMER: Use this script with caution. This script is not 
the most secure method available, for protecting material. Its
main purpose is to demonstrate the javascript techniques used.
The author takes no responsibility for data loss
resulting from the use of this script.
-------------------------------------------------------------------

INSTRUCTIONS - Read Before Using Script

If you are using frames, the code referred to in steps 2 - 5 must be put in the 
pages displayed in the frames and NOT in the parent document.

Step 1
In the Usernames & Passwords section, configure the variables as
indicated by the comments.
 
Step 2:
Add the following code to the <head> section of your login page: 
 <script src="scripts/login.js"></script> 
Change "scripts/login.js" to reflect the correct path to this script
file on your server. 
 
Step 3:
Add this code to the login page, at the place you want the login
panel to show:
 
 <script language="JavaScript">
  BuildPanel();
 </script>
 
Step 4:
Add the following code to the <head> section of each page procteded
by this script:
 
 <script src="scripts/login.js"></script>
 <script language="JavaScript">
  checkCookie();
 </script>

Change "scripts/login.js" to reflect the correct path to the script
file on your server.
 
Step 5: 
On the page that is to have the logout button, paste this code where you
want the button to be:

 <form action="" name="frmLogoff">
  <input type="button" name="btLogoff" value="log out" onclick="logout();">
 </form>
 
 To use your own image instead of the grey button change the type from button to image
 and add src="myimage.gif" where myimage.gif is the image (including the path to it if
 needed, you want to use.
 
Step 6:
Upload this script and your html pages to the relevant directories
on your server. 




*/

//----------------------------------------------------------------
//  Usernames, Passwords & User Pages - These require configuration.
//----------------------------------------------------------------
var successpage = "info_curso_nobel_replace.html"; // The page users go to after login, if they have no personal page.
var loginpage = "login.html"; //Change this to the page the login panel is on.

var imgSubmit = ""; //Change to the path to your login image,if you don't want the standard button, otherwise do not change.
var imgReset = "";  //Change to the path to your reset image,if you don't want the standard button, otherwise do not change.

var users = new Array();

users[0] = new Array("user","pass",""); // Change these two entries to valid logins.
users[1] = new Array("username2","password2","");          // Add addtional logins, straight after these, as
                                                           // required, followig the same format. Increment the 
											               // numbers in the square brackets, in new each one. Note:
											               // the 3rd parameter is the the page that user goes to
											               // after successful login. Ensure the paths are correct.
                                                           // Make this "" if user has no personal page.
//----------------------------------------------------------------
//  Login Functions
//----------------------------------------------------------------
function login(username,password){
 var member = null;
 var loggedin = 0;
 var members = users.length;
 for(x=0;x<members && !loggedin; x++){
 if((username==users[x][0])&&(password==users[x][1])){
    loggedin = 1;
    member = x;
	break; // User validated, terminate the for loop.
   }
 } 
 
 if(loggedin==1){
  if(users[member][2] != "") {
   successpage = users[member][2];
  }
  setCookie("login",1);
  if (top.location.href != location.href){
   location.href = successpage;           
  }else{
   top.location.href = successpage;  
  }
 }else{
  alert('access denied');
 }  
}

function logout() {
 deleteCookie("login");
 if (top.location.href != location.href){
  location.href = loginpage;           
 }else{
  top.location.href = loginpage;  
 }
}

//----------------------------------------------------------------
// Cookie Handler
//----------------------------------------------------------------
var ckTemp = document.cookie;

function setCookie(name, value) { 
 if (value != null && value != "")
  document.cookie=name + "=" + escape(value) + ";";
 ckTemp = document.cookie;
 }
 
function deleteCookie(name) {
  if (getCookie(name)) {
    document.cookie = name + "=" +
    "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}

function getCookie(name) { 
 var index = ckTemp.indexOf(name + "=");
 if(index == -1) return null;
  index = ckTemp.indexOf("=", index) + 1;
 var endstr = ckTemp.indexOf(";", index);
 if (endstr == -1) endstr = ckTemp.length;
 return unescape(ckTemp.substring(index, endstr));
 }
  
function checkCookie() {
 var temp = getCookie("login");
 if(!temp==1) {
  alert('Contraseña o Nombre de Usuario Incorrectos'); 
  if(top.location.href != location.href){
   location.href = loginpage;           
  }else{
   top.location.href = loginpage;  
  }
 }
}

//----------------------------------------------------------------
// Login Panel
//----------------------------------------------------------------

function BuildPanel() {
document.write('<form name="logon"><table align="left" border="0"><tr><td align="right">');
document.write('<small><font color="#999999" face="Verdana">Usuario </font></small>');
document.write('<td><small><font face="Verdana"><input type="text" name="username" size="20"></font></small></td></tr>');
document.write('<tr><td align="right"><small><font color="#999999" face="Verdana">Contrase&ntilde;a </font></small></td>');
document.write('<td><small><font face="Verdana"><input type="password" name="password" size="20"></font></small></td></tr>');
if(imgSubmit == ""){
 document.write('<tr><td align="center" colspan="2"><p><input type="button" value="Ingresar" name="Ingresar" onclick="login(username.value,password.value)">'); 
} else {
 document.write('<tr><td align="center" colspan="2"><p><input type="image" src="'+imgSubmit+'" name="Ingresar" onclick="login(username.value,password.value)">');
}
if(imgReset == ""){
 //document.write('<input type="reset" value="Reset" name="Reset">');
} else {
 //document.write('<input type="image" src="'+imgReset+'" name="Reset" onclick="logon.reset();">');
}
document.write('</p></td></tr></table></form>');
}
Seguí los pasos al pie de la letra, sin embargo, las páginas protegidas (de las que habla el Step 4) se pueden accesar sin que pida logearse escribiendo la dirección en el navegador de internet.

Será que algo hize mal o al script le falta algo??

salu2!!
  #2 (permalink)  
Antiguo 26/08/2008, 13:36
 
Fecha de Ingreso: marzo-2008
Mensajes: 342
Antigüedad: 16 años, 1 mes
Puntos: 4
Respuesta: Ayuda con script login simple

este codigo necesita cookies para aceder, osea, si el navegante ha deshabilitado las cookies no podra acceder. ¿no has intentado hacerlo en sessiones de ASP o PHP???
  #3 (permalink)  
Antiguo 26/08/2008, 14:04
 
Fecha de Ingreso: junio-2007
Mensajes: 5
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: Ayuda con script login simple

Traté de hacerlo con php...

buscando en este mismo foro encontré un tutorial...

baje el WAMP5 y Dreamweaver CS3 pero nunca logré conectar con la base de datos... no conozco mucho el tema y me kedé estancado luego de crear la BD en MyphpAdmin.

Cita:
Iniciado por juaniquillo Ver Mensaje
Perdona Moira, creo que te confundí con McBlink arriba... jejeje.
Pues si necesitas restringir al menos una página te recomiendo que hagas un sistema de log in. Es bastante fácil en DW.

Necesitas dos páginas una con una forma de usuario y contraseña y la que vas a restringir la entrada. En la primera haces la forma de log in (acuerdate de escoger el campo de la contraseña como password:



Luego vas a 'Aplication Panel', a la pestaña de Server Behaviors, y le das a:
Símbolo de mas (+) -> User Authentification -> Log in User



En la próxima ventana escogerás lo siguiente:
1- Tu formulario
2- El campo del usuario
3- El campo de la contraseña
4- Tu coneccion MySQL
5- La tabla en tu base de datos donde tienes los usuarios
6- El campo del usuario en tu base de datos
7- El campo contraseña en tu base de datos
8- La página donde quieres que el usuario vaya si la identificación funciona
9- La página donde quieres que el usuario vaya si la identificación falla
10- Lo dejas en 'Username and Password'



Y ya está. Por ahora, en las páginas de confirmación puedes poner "Exito" y "Error" respectivamente para que veas si todo funciona bien. Prueba si todo funciona y, si no hay ningún problema, pasamos al próximo paso.
Disculpa mi ignorancia pero no sé como hacer que Dreamweaver me muestre algo para poner en la opcion 4. Te agradceré cualquier ayuda

salu2
  #4 (permalink)  
Antiguo 26/08/2008, 14:42
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: Ayuda con script login simple

mmmmmmm es que para ello necesitaras saber de base de datos y demas... te propongo hacerlo con php con su funcion AUTH_USER(); debrias poner este codigo al comienzo de todas tus paginas que quieras con seguridad.....

Código PHP:
<?php 
//deberias solo modificar donde pone tu usuario aqui y contraseña aqui...
//por algun usuario o contraseña....
   
if (($PHP_AUTH_USER!="tu_usuario_aqui") || ($PHP_AUTH_PW!="tu_contraseña_aqui")) {
      
header('WWW-Authenticate: Basic realm="Ingresar al Sistema"');
      
header('HTTP/1.0 401 Unauthorized');
      echo 
'<head>';
      echo 
'<script language="javascript">window.onload = new Function(null)</script>';
      echo 
'</head>';
      echo 
'<body>';
      echo 
'<div align="center">No Tiene Acceso a Esta Zona</div>';
      echo 
'</body>';
      exit;
   }
?>
si quieres ocupar el ejemplo que propone juaniquillo deberas editar algunas cosas que usan base de datos :º
saludos...
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #5 (permalink)  
Antiguo 26/08/2008, 14:58
 
Fecha de Ingreso: junio-2007
Mensajes: 5
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: Ayuda con script login simple

pego ese codigo en el <head> de mis html?

tal como lo pusiste? (con <?php ?)
  #6 (permalink)  
Antiguo 26/08/2008, 19:32
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: Ayuda con script login simple

deberia ir sobre el <!DOCTYPE html PUBLIC........

al inicio de todo.....
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #7 (permalink)  
Antiguo 27/08/2008, 07:42
 
Fecha de Ingreso: junio-2007
Mensajes: 5
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: Ayuda con script login simple

Cuando hago un preview de una página en blanco con ese codigo me sale esto en firefox:
Código:
'; echo ''; echo ''; echo ''; echo '
No Tiene Acceso a Esta Zona
'; echo ''; exit; } ?>
habrá algun error de sintaxis?

salu2

PD: No habrá algun otro método sencillo de proteger un html con username y password? No necesito registrar usuarios, ni nada mas....
  #8 (permalink)  
Antiguo 27/08/2008, 10:57
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: Ayuda con script login simple

pues el metodo que te propuse es para una pagina con extencion .php no .html
lo veo dificil proteger una pagina .html a lo menos que hagas una en php y la pases digamos a html por medio de modrewrite de apache, pero esa es otra historia, mira html se deberia saber que es solo digamos para pintar una pagina, y puedes lograr lo que quieres usando javascript pero siendo esto ejecutado al lado del usuario por mas seguridad que trates de ponerle con este medio siempre sera accecible por decirlo asi....

saludos....
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #9 (permalink)  
Antiguo 27/08/2008, 11:18
Avatar de juanitTo  
Fecha de Ingreso: enero-2007
Mensajes: 406
Antigüedad: 17 años, 3 meses
Puntos: 5
Respuesta: Ayuda con script login simple

Si hiciste la preview en firefox y el archivo estaba en tu pc no lo puedes leer, por que necesitas un servidor que lea php, subelo a algun servidor como freehostia o lycos y ya veras como funciona.
__________________
Videos de Metal
  #10 (permalink)  
Antiguo 27/08/2008, 14:06
 
Fecha de Ingreso: junio-2007
Mensajes: 5
Antigüedad: 16 años, 10 meses
Puntos: 0
Respuesta: Ayuda con script login simple

OK, el php funciona perfectamente cuando está en un servidor Php

Creo que por ahora me servirá. No queda mas remedio que aprender a usar phpmyadmin y mysql y Apache.... Alguna recomendacion de donde empezar?

Conozco de base de datos, programacion, Dreamweaver, FTP, pero no tengo idea como enlazar todo esto

Por cierto, MUCHAS GRACIAS A TODOS :)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:16.