PHP - como validar un usuario

   
Vista:

como validar un usuario

Publicado por zendi (824 intervenciones) el 09/06/2012 14:26:51
Buenos dias a todos Estoy desarrollando un codigo para validar el acceso de un usuario a una base de datos, quisiera saber su opinion si esta bien desarrollado acepto sus sugerencia gracias
este es mi codigo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php
   $connect = pg_connect("host=localhost port=5432 dbname=administra user=postgres password=1234");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Gastos</title>
<style type="text/css">
  .sr {
    background-color: #FFFFCF;
    color: #000000;
    font-family: Arial;
    font-size: 12px;
      }
  input.color1 {background-color: #00CC99; font-weight: bold; font-size: 12px; color: white;}
</style>
</head>
<body>
<form action="usuario.php" method='POST'>
<fieldset style='width:auto'><LEGEND>Usuarios</LEGEND>
   <table align='center'>
	  <tr>
		<td class="sr" align='right' style="text-decoration:none">Login:</td>
		<td class="sr"><input type="text" name="login" size="10" maxlength="10" align="right"/></td>
	  </tr>
	  <tr>
		<td class="sr" align='right' style="text-decoration:none">Contraseña:</td>
		<td class="sr"><input type="password"  name="contrasena" size="20" maxlength="20" align="right"/></td>
	  </tr>
	</table>
<table align="center">
   <tr>
    <td>
         <input class="color1" type="submit" name="action" value="Ingresar"/>
<!--         <INPUT TYPE="button" class="color1" VALUE="Salir" ONCLICK="window.location.href='menu.html'">
-->    </td>
    </tr>
</table>
</fieldset>
<br/>

</form>
</body>
</html>
<?php
$connect = pg_connect("host=localhost port=5432 dbname=administra user=postgres password=1234");

$login      = $_POST['login'];
$contrasena = $_POST['contrasena'];

$clave = "SELECT FROM acceso WHERE login1=$login";

if ($login=="mega" && $contraseña =="gato") {

echo "<h1>Su contraseña es correcta<h1>";
echo "Bienvenido al sistema";

}
else {

echo "<p>Su Login o Contraseña son Incorrectos</p>";
echo "Se ha pulsado el boton enviar";

}
header("location:menu.html");
?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

como validar un usuario

Publicado por xve (5515 intervenciones) el 09/06/2012 20:23:47
Hola Zendi, a mi modo de ver, y como sugerencia te diría.

1.- No utilizas tablas. Son muy limitadas y cada vez están mas mal vistas por los buscadores.

2.- Yo pondría el código php al inicio de la pagina, antes de ningún código html. Si por lo que sea, tu código falla, el usuario visualiza nuevamente la pagina, y siempre la estas enviando al navegador del cliente, cuando para validar un usuario, no seria necesario.
En algunos servidores, te dará error, ya que no permitirá realizar un location habiendo mostrado código html con anterioridad.

3.- En dos lugares diferentes de la misma pagina realizas la conexión a la base de datos. Con una es mas que suficiente.

Espero que te sirva... son únicamente sugerencias, nada mas...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como validar un usuario

Publicado por zendi (824 intervenciones) el 10/06/2012 03:42:22
Acepto tu sugerencia xve, pero quisiera saber tambien tu opinion acerca de si esta parte del codigo esta bien o habrá algun error.
es decir el codigo php, el cual te muestro:

1
2
3
4
5
6
7
8
9
10
<?php $connect = pg_connect("host=localhost port=5432 dbname=administra user=postgres password=1234");
$login = $_POST['login'];
$contrasena = $_POST['contrasena']; $clave = "SELECT FROM acceso WHERE login1=$login";
if ($login=="mega" && $contraseña =="gato")
     { echo "<h1>Su contraseña es correcta<h1>";
      echo "Bienvenido al sistema";
 } else {
      echo "<p>Su Login o Contraseña son Incorrectos</p>";
      echo "Se ha pulsado el boton enviar"; }
  header("location:menu.html"); ?>




asi escomo se valida
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

como validar un usuario

Publicado por xve (5515 intervenciones) el 10/06/2012 09:25:46
Hola Zendi, no se si te da algún error... a mi modo de ver, veo que lo tienes bastante liado... varias instrucciones en una misma linea es muy lioso a la hora de depurar o revisar el código. Si este código tuviera que tocarlo otra persona, sin ninguna duda, lo primero que aria seria poner una instrucción por linea y tabularlo todo correctamente.

Aparte de eso, si tu lo entiendes y solo lo tienes que ver tu...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

como validar un usuario

Publicado por xve (5515 intervenciones) el 10/06/2012 09:29:12
Ahora, me doy cuenta (lo que decíamos de que es un lio de visualizar) que a mi modo de ver esta mal.

1.- porque realizas un echo si después haces un header? nunca se visualizara el texto si es que te funciona el header...

2.- el usuario y contraseña están escritos tal cual...

Revisa este código, ahi veras como gestionar correctamente las contraseñas y validaciones: http://www.lawebdelprogramador.com/codigo/PHP/2112-Gestion_de_una_administracion_Web.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como validar un usuario

Publicado por zendi (824 intervenciones) el 11/06/2012 03:24:25
Bueno quedó resuelto el codigo. Este es el codigo: Lo dejo para que puedan rehusarlo.

CODIGO PARA EL FORMULARIO:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Acceso al Sistema de Condominio</title>
<style type="text/css">
  .sr {
    background-color: #FFFFCF;
    color: #000000;
    font-family: Arial;
    font-size: 12px;
      }
  input.color1 {background-color: #00CC99; font-weight: bold; font-size: 12px; color: white;}
</style>
</head>
<body>
<form action="usuario.php" method='POST'>
<fieldset style='width:auto'><LEGEND>Usuarios</LEGEND>
   <table align='center'>
	  <tr>
		<td class="sr" align='right' style="text-decoration:none">IDENTIFICACION DEL USUARIO</td>
	  </tr>
	</table>
 
   <table align='center'>
	  <tr>
		<td class="sr" align='right' style="text-decoration:none">Login:</td>
		<td class="sr"><input type="text" name="login" size="10" maxlength="10" align="right"/></td>
	  </tr>
	  <tr>
		<td class="sr" align='right' style="text-decoration:none">Contraseña:</td>
		<td class="sr"><input type="password"  name="contrasena" size="20" maxlength="20" align="right"/></td>
	  </tr>
	</table>
<table align="center">
   <tr>
    <td>
         <input class="color1" type="submit" name="action" value="Ingresar"/>
<!--         <INPUT TYPE="button" class="color1" VALUE="Salir" ONCLICK="window.location.href='menu.html'">
-->    </td>
    </tr>
</table>
</fieldset>
<br/>

</form>
</body>
</html>

CODIGO QUE LLAMO DESDE EL ANTERIOR

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
   $connect = pg_connect("host=localhost port=5432 dbname=administra user=postgres password=1234");
session_start();
$login      = $_POST["login"];
$contrasena = $_POST["contrasena"];
   $connect = pg_connect("host=localhost port=5432 dbname=administra user=postgres password=1234");
 
$row=pg_query("SELECT * FROM acceso WHERE login1='$login' AND contrasena ='$contrasena'");
 
if(pg_fetch_array($row)>0)
  {
    header("Location:menu.html");
  }
else
  {
    echo "No se pudo conectar al Servidor de Base de Datos";
  }
 
?>

si lo hace EN REALIDAD.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como validar un usuario

Publicado por juan (1 intervención) el 12/10/2012 18:27:16
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
   $connect = pg_connect("host=localhost port=5432 dbname=administra user=postgres password=1234");
session_start();
$login      = $_POST["login"];
$contrasena = $_POST["contrasena"];
   $connect = pg_connect("host=localhost port=5432 dbname=administra user=postgres password=1234");
 
$row=pg_query("SELECT * FROM acceso WHERE login1='$login' AND contrasena ='$contrasena'");
 
if(pg_fetch_array($row)>0)
  {
    header("Location:menu.html");
  }
else
  {
    echo "No se pudo conectar al Servidor de Base de Datos";
  }
 
?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

excelente

Publicado por angel (1 intervención) el 17/01/2014 08:40:21
oye una disculpa me podrias facilitar tus o tu base de datos para ver los errores porfavor
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como validar un usuario

Publicado por Maria Cristina Alejandra (2 intervenciones) el 02/07/2015 16:34:09
Hola tengo una duda, el código de validación se pone en la misma hoja...
eje:
El código de arriba de zendi,
este comentario c pone primero y después su validación
o en otra hoja y c manda a llamar su función de validación de usuarios
agradezco la ayuda.. Necesito hacer una encuesta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

como validar un usuario

Publicado por Cristina Alejandra Torres Arjon (2 intervenciones) el 13/07/2015 18:55:38
Hola, Oie disculpa,
Quiero que mi programa rebise en la base de datos,
si el usuario y contraseña que a ingresado se encuentra guardado
si es asi, Que permita entrar a una encuesta
si no esta registrado su correo en mi base de datos en php
que aparesca error de usuario...


Como puedo hacer que mi programa haga eso.?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar