Ver Mensaje Individual
  #12 (permalink)  
Antiguo 25/04/2004, 10:59
Avatar de sism82
sism82
 
Fecha de Ingreso: octubre-2003
Ubicación: Guadalajara
Mensajes: 865
Antigüedad: 20 años, 6 meses
Puntos: 1
según creo esto te resuelve el problema, son dos páginas que intercambian variables, en lugar de usar GET uso POST que es mas seguro...

<?php session_start(); ?>
<html>
<head>
<title>Login</title>
<script language="JavaScript">
var usuario = ''; //defines e inicializas estas variables globales para que las pueda usar cualquiera de tus funciones
var pass = '';
function askData()
{
usuario = window.prompt('Cual es tu nombre de usuario: ','teclea uno');//preguntas datos
pass = window.prompt('Cual es tu password','recuerda que es sensible a mayúsculas y minúsculas');
alert("Los datos serán enviados para verificarlos, se te notificará en unos segundos...");
sendData();//mandas llamar la funcion de envio de datos, pudieras hacerlo todo aqui mismo, pero DIVIDE y VENCERAS...
return true;
}
function sendData()
{
with(document.enviaDatos)
{
user.value = usuario;//al valor del campo hidden user le asignas el valor que te devolvió el prompt
password.value = password;
submit();
}
return true;
}
function tellHim(resultado)
{
if(resultado == 'datosValidos')
alert("Tus datos son válidos y acabas de iniciar sesión");
else
if(confirm("Tus datos son incorrectos, deseas introducirlos de nuevo??"))
askData();
else
return false;
}
</script>
</head>
<body<?php echo isset($_POST['resultado']) ? ' onLoad="tellHim(\''.$_POST['resultado'].'\');"' : ''; ?>>
<?php echo isset($_SESSION['usuario']) ? 'Bienvenido '.strtoupper($_SESSION['usuario']) : ''; ?>
<form name="enviaDatos" action="checkData.php" method="post">
<input type="hidden" name="user">
<input type="hidden" name="password">
</form>
<a href="#" onClick="askData();">Entrar</a>
</body>
</html>


la pagina de validacion es asi:

<?php
session_start();
$link = conexion();//tu funcion para conectarte
$sqlVerifica = "SELECT * FROM usuarios WHERE usuario = '".$_POST['user']."' AND password = '".$_POST['password']."'";
$rssVerifica = mysql_query($sqlVerifica,$link) or die("Error, consulta al administrador y copia el siguiente mensaje: ".mysql_error($link));
if($rssVerifica)
{
$resultado = "datosValidos";
$datos = mysql_fetch_object($rssVerifica);
$_SESSION['usuario'] = $datos->usuario;//como los datos son validos inicializo una variable de sesion para luego verificar en
//cada web que este inicializada, si no lo esta, lo mando a iniciar sesion.
}
else
$resultado = "datosInvalidos";
?>
<html>
<head>
<title>Login</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
function sendData()
{
document.regresarDatos.submit();
return true;
}
</script>
</head>
<body onLoad="sendData();">
<form name="regresarDatos" action="prompt.php" method="post">
<input type="hidden" name="user" value="<?php echo $_POST['user']; ?>">
<input type="hidden" name="password" value="<?php echo $_POST['password']; ?>">
<input type="hidden" name="resultado" value="<?php echo $resultado; ?>">
</form>
</body>
</html>

como ves envio un formulario con js, los datos los lee php y los regresa y son leidos por js

saludos