validar passwords

jpespinoza
03 de Septiembre del 2003
necesito validar una contraseña en una bd mysql, con la que ingresa un usuario.

jakman
03 de Septiembre del 2003
hay dos formas de hacerlo, la primera es utilizando las kabeceras:

<?
header("WWW-Authenticate: Basic realm="esta pagina" ");
header("HTTP/1.0 401 Unauthorized");
?>

esto te muestra una pequeña forma de validacion ke asigna los valores introducidos para el kampo Usuario y Password a las variables $PHP_AUTH_USER y $PHP_AUTH_PW respektivamente, ya kon estos valores puedes buskar al usuario en la base de datos.

la otra forma es haciendo un pequeño formulario en tu pagina y guardar el nombre del usuario y password en variables definidas por ti, y de la misma forma buskar al usuario en la base de datos.

espero me hayas podido entender, pero si tienes alguna duda mandame un mail a [email protected]

suerte

ciao

jpespinoza
03 de Septiembre del 2003
Gracias muy buena la respuesta, pero estoy aprendiendo php presionado??

Como puedo hacer para validar datos que vengan de un formulario y si no son correctos emitir un mensaje de error y devolverlo a la pagina principal

jakman
03 de Septiembre del 2003
aki te va una serie de paginas(kodigos) ke talves te sirvan:

el primero es la bienvenida al usuario donde tiene ke poner su login y password, si estan vacios se keda en la misma pagina (usuarios.php , si hay datos, se va a una pagina de validacion de los mismos (wellcomeuser.php)

************************* usuarios.php *****************************

<html>
<head>
<title>Lokin Users</title>
</head>

<body bgcolor="#000000" text="#FFFFFF">
<div align="center">
<p><img src="Gifs/Buttons/Usuariosbanner.gif" width="234" height="60"></p>
<font color="#FFFF00"><font color="#FFFFFF" face="Courier New, Courier, mono" size="2"><b><font size="3">Bienvenido</font></b><br><br>
<font color="#009900">si eres un Usuario ya registrado de <b>www.jakousi.com</b>
entonces<br>
ke <b>&iquest;&iquest;&iquest;esperas para entrar ???</b>,</font></font></font><font color="#009900" face="Courier New, Courier, mono" size="2">
y si no lo eres,<b><br> &iquest;&iquest;&iquest;
ke esperas para registrarte ???</b></font>
<p>
<?
if ( (! empty($User)) and (! empty($Pass)))
{
?>
<script language='JavaScript'>
//location.replace("wellcomeuser.php?User=<? echo $User ?>&Pass=<? echo $Pass ?>");
location.href="wellcomeuser.php?User=<? echo $User ?>&Pass=<? echo $Pass ?>";
</script>
<?
}
else
{
echo "Complete los datos para poder iniciar su sesion.<br>";
?>
</p>

<p>&nbsp; </p>
<form action="<? echo $PHP_SELF?>" method=Post>

<table width="396" bgcolor="#0080C0">
<tr>
<td width="264" > <font color="#FFFFFF" face="Courier New, Courier, mono" size="2">Nombre
de Usuario:
<input type="text" name="User" maxlength="25">
</font> </td>
</tr>
<td width="264" height="28"> <font color="#FFFFFF" face="Courier New, Courier, mono" size="2">Contrase&ntilde;a:
<input type="password" name="Pass" maxlength="15">
</font> </td>
<td height="28" width="66">
<input type="submit" value="Entrar">
</td>
</tr>
</table>

<p>&nbsp;</p><h>&nbsp;</h>
<table width="643" height="29">
<tr>
<td>
<div align="center">
<p><font color="#FFFFFF" face="Courier New, Courier, mono" size="2">Para
ser parte de los <b>usuarios registrados de www.jakousi.com</b>
solo tienes ke hacer <a href="../Usuarios/registro.php"><b><font color="#009900">click
Aki</font></b></a></font></p>
</div>
</td>
</tr>
</table>
</form>
</div>
<?
}
?>
</body>
</html>

********************** wellcomeuser *************************

aki se realiza la validacion del usuario si el usuario existe, entonces te manda a una tercera pagina (index.php) del menu de usuarios, de otro modo te reporta el error (error.php).

<html>
<head>
<title>kiubo Usuario</title>

</head>

<body bgcolor="#000000" text="#FFFFFF">
<div align="center">
<?
if ( (empty($User)) or (empty($Pass)) )
{
echo "Verifike ke halla llenado los kampos kon la informacion necesaria<br>";
}
else
{
// echo "el Usuario es: ".$User." y su password es: ".$Pass;
// primero buskamos al usuario en la base de datos
// segun su Nombre de Usuario y Contraseña

require "servermodule.php";

$con=mysql_pconnect($kserver,$kuser,$kpassword)
or die ("No puedo conectarme al servidor de la Base de Datos");

mysql_select_db($kdb, $con)
or die("No puedo acceder a la Base de Datos, o esta no existe.");

$Qry= "Select * From Usuarios Where (Login = '$User')";

$resultado=mysql_query($Qry, $con); // aqui hace un select
$items = mysql_num_rows($resultado);

if ($items > 0 )
{
// echo "entro al If($items>0) del '$items'";
while( ($fila=mysql_fetch_array($resultado)) ) // se genera un arreglo con la informacion
// contenida en los campos de la tabla
if ($fila["Password"] == $Pass)
{
/* aki chekamos los permisos ke el usuario tiene dentro de www.jakousi.com
con esto habilitamos el menu del panel de kontrol de los usuarios */

// echo "entro al If(".$fila["Password"]." == ".$Pass.") dentro del while";

$Qry2= "Select * From Permisos Where (Login = '$User')";
$resultado2=mysql_query($Qry2, $con); // aqui hace un select
$items2 = mysql_num_rows($resultado2);

if ($items2 > 0 )
{
// echo "entro al If($items>0) del '$items'";
while(($fila2=mysql_fetch_array($resultado2)))
{
?>
<!-- aqui redireccionamos la pagina -->
<script language='JavaScript'>
location.href="../Usuarios/index.php?TC=<? echo $fila2["Correo"]?>&TA=<? echo $fila2["Archivos"]?>&TAr=<? echo $fila2["Articulos"]?>&TH=<? echo $fila2["Hosteo"]?>&TU=<? echo $fila2["TipoUsuario"]?>&Usr=<? echo $fila2["Login"] ?>&NmbU=<? echo $fila["Nombre"] ?>";
</script>
<?
}
}
else
{
?>
<!-- aqui redireccionamos la pagina -->
<script language='JavaScript'>
location.href="../Usuarios/error.php?err=1";
</script>
<?
}
}
else
{
?>
<!-- aqui redireccionamos la pagina -->
<script language='JavaScript'>
location.href="../Usuarios/error.php?err=2";
</script>
<?
}
}
else
{
?>
<!-- aqui redireccionamos la pagina -->
<script language='JavaScript'>
location.href="../Usuarios/error.php?err=3";
</script>
<?
}
}
?>

<!-- <p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><img src="../Gifs/Banners/construcion.gif"></p>-->
</div>
</body>
</html>

************************** error.php *******************************

aki le indikamos al usuario kual es el error, y lo regresamos a la pagin donde debe de ingresar nuevamente sus datos

<html>
<head>
<title>sesion no valida</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>


<body bgcolor="#000000" text="#FFFFFF">
<div align="center">
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>

<font face="Kristen ITC"> <font color="#A60000" size="3">
<?
switch ($err)
{
case 1: echo "Usuario SIN Permisos de akceso.";
break;
case 2: echo "El Nombre de Usuario y la Kontraseña NO koinciden";
break;
case 3: echo "Usuario NO Registrado";
break;
}
?>
</font>
<p>&nbsp;</p>
<script LANGUAGE="JavaScript">
<?//var pagina="../index.php"; ?>
var pagina="../usuarios.php";

function redireccionar(){
location.href=pagina
}
setTimeout ("redireccionar()", 3000);
</script>
</font>
</div>
</body>
</html>

jakman
03 de Septiembre del 2003
si tienes otra duda mandame un mail a [email protected]