Foros del Web » Programando para Internet » PHP »

No doy con el error

Estas en el tema de No doy con el error en el foro de PHP en Foros del Web. Nuevamente a molestarlos, no doy con el error, me colaboran por favor Cuando el usuario se equivoca en el nombre, en la clave o no ...
  #1 (permalink)  
Antiguo 03/04/2012, 18:39
 
Fecha de Ingreso: noviembre-2010
Mensajes: 204
Antigüedad: 13 años, 5 meses
Puntos: 1
No doy con el error

Nuevamente a molestarlos, no doy con el error, me colaboran por favor

Cuando el usuario se equivoca en el nombre, en la clave o no digita nada y envia el formulario, muestra el mensaje "El nombre de usuario o la contraseña ingresada son incorrectos.", pero no se regresa al login nuevamente, que me falta

Este es el codigo que tengo

login.php

<?php

if (!isset($_POST['usuario']))

{

?>

<form action="?" method="post">
Login: <input type="text" name="usuario" />
Contraseña: <input type="password" name="contrasena" />
<input type="submit" value="Iniciar Sesion" />
</form>

<?php

}else{

$usuario = $_POST['usuario'];
$contrasena = $_POST["contrasena"];
$user = 'PEPE';
$pass = '*****';

if ($usuario == $user && $contrasena == $pass)

{

$_SESSION['es_admin'] = true;
header('Location:abcd.php');

}else{

echo "El nombre de usuario o la contraseña ingresada son incorrectos.";

}

}

?>

Gracias

Isabel
  #2 (permalink)  
Antiguo 03/04/2012, 18:52
 
Fecha de Ingreso: abril-2012
Ubicación: Guadalajara
Mensajes: 16
Antigüedad: 12 años
Puntos: 0
Respuesta: No doy con el error

Intenta agregando lo que esta en rojo
Código PHP:
<?php

if (!isset($_POST['usuario']))

{

?>

<form action="?" method="post">
Login: <input type="text" name="usuario" /> 
Contraseña: <input type="password" name="contrasena" />
<input type="submit" value="Iniciar Sesion" />
</form>

<?php

}else{

$usuario $_POST['usuario'];
$contrasena $_POST["contrasena"];
$user 'PEPE';
$pass '*****';

if (
$usuario == $user && $contrasena == $pass)

{

$_SESSION['es_admin'] = true;
header('Location:abcd.php');

}else{

echo 
"El nombre de usuario o la contraseña ingresada son incorrectos.";
[
COLOR="Red"]header('javascript:history.go(-1)');[/COLOR]

}

}

?>
  #3 (permalink)  
Antiguo 03/04/2012, 18:58
Avatar de educhip  
Fecha de Ingreso: mayo-2008
Ubicación: Granada
Mensajes: 84
Antigüedad: 15 años, 11 meses
Puntos: 6
Respuesta: No doy con el error

El planteamiento es correcto pero me temo que le va a dar error al haber codigo html antes del header...
  #4 (permalink)  
Antiguo 03/04/2012, 19:01
 
Fecha de Ingreso: abril-2012
Ubicación: Guadalajara
Mensajes: 16
Antigüedad: 12 años
Puntos: 0
Respuesta: No doy con el error

Cita:
Iniciado por educhip Ver Mensaje
El planteamiento es correcto pero me temo que le va a dar error al haber codigo html antes del header...
o tambien puede agregar un

header('Location:sudestino.php');
en vez del de javascript
  #5 (permalink)  
Antiguo 03/04/2012, 19:24
 
Fecha de Ingreso: noviembre-2010
Mensajes: 204
Antigüedad: 13 años, 5 meses
Puntos: 1
Respuesta: No doy con el error

Th3C0d3R, gracias por tu sugerencia

Adicione la linea que tu me sugeriste header('Location:sudestino.php');, pero me genero este error

El nombre de usuario o la contraseña ingresada son incorrectos.
Warning: Cannot modify header information - headers already sent by (output started at /home/mipagina/public_html/login.php:38) in /home/mipagina/public_html/login.php on line 39
  #6 (permalink)  
Antiguo 03/04/2012, 19:43
 
Fecha de Ingreso: abril-2012
Ubicación: Guadalajara
Mensajes: 16
Antigüedad: 12 años
Puntos: 0
Respuesta: No doy con el error

Cita:
Iniciado por isabelramirezmontoya Ver Mensaje
Th3C0d3R, gracias por tu sugerencia

Adicione la linea que tu me sugeriste header('Location:sudestino.php');, pero me genero este error

El nombre de usuario o la contraseña ingresada son incorrectos.
Warning: Cannot modify header information - headers already sent by (output started at /home/mipagina/public_html/login.php:38) in /home/mipagina/public_html/login.php on line 39
copia lo siguiente asi deberia funcionar tu codigo completo

Código PHP:
<?php 
ob_start
(); 
if (!isset(
$_POST['usuario'])) 



?> 

<form action="?" method="post"> 
Login: <input type="text" name="usuario" />  
Contraseña: <input type="password" name="contrasena" /> 
<input type="submit" value="Iniciar Sesion" /> 
</form> 

<?php 

}else{ 

$usuario $_POST['usuario']; 
$contrasena $_POST["contrasena"]; 
$user 'PEPE'
$pass '*****'

if (
$usuario == $user && $contrasena == $pass



$_SESSION['es_admin'] = true
header('Location:abcd.php'); 

}else{ 

echo 
"El nombre de usuario o la contraseña ingresada son incorrectos."
[
COLOR="Red"]header('javascript:history.go(-1)');[/COLOR




ob_end_flush();
?>
  #7 (permalink)  
Antiguo 03/04/2012, 20:27
 
Fecha de Ingreso: noviembre-2010
Mensajes: 204
Antigüedad: 13 años, 5 meses
Puntos: 1
Respuesta: No doy con el error

Th3C0d3R, mil gracias por tu sugerencia me quedo funcionando muy bien.

Quedo con una duda, la instruccion ob_start() que me sugeriste que hace?

¿La forma como estoy definiendo la sesion es segura?

Gracias

Isabel.
  #8 (permalink)  
Antiguo 03/04/2012, 20:59
 
Fecha de Ingreso: abril-2012
Ubicación: Guadalajara
Mensajes: 16
Antigüedad: 12 años
Puntos: 0
Respuesta: No doy con el error

Cita:
Iniciado por isabelramirezmontoya Ver Mensaje
Th3C0d3R, mil gracias por tu sugerencia me quedo funcionando muy bien.

Quedo con una duda, la instruccion ob_start() que me sugeriste que hace?

¿La forma como estoy definiendo la sesion es segura?

Gracias

Isabel.
Permite agregar buferes de salida como el header

Etiquetas: formulario, usuarios
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 23:00.