Foros del Web » Programando para Internet » PHP »

Por que no funciona esta pureba de autentificacion?

Estas en el tema de Por que no funciona esta pureba de autentificacion? en el foro de PHP en Foros del Web. Buenas Tardes a to el mundo, vereis, estoy haciendo una prueba de autentificacion con lo del $PHP_AUTH_USER y todo eso, pero no me sale, ahora ...
  #1 (permalink)  
Antiguo 22/06/2003, 08:16
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.427
Antigüedad: 14 años, 6 meses
Puntos: 7
Por que no funciona esta pureba de autentificacion?

Buenas Tardes a to el mundo, vereis, estoy haciendo una prueba de autentificacion con lo del $PHP_AUTH_USER y todo eso, pero no me sale, ahora solo estoy usando $PHP_AUTH_USER='Carlos', vamos que no uso MySql. Deberia funcionar de todas maneras ¿Verdad?

Aqui os dejo el pequeño codigo que tengo.

<?php
if (!isset($PHP_AUTH_USER)) {
header("WWW-Authenticate: Basic realm=\"My Realm\"");
header("HTTP/1.0 401 Unauthorized");
echo "El Usuario Introducido no coincide con ningun cliente.\n";
exit;
} else {
if($PHP_AUTH_USER='Carlos' && $PHP_AUTH_PW='contra'){
echo "<p>Hola $PHP_AUTH_USER.</p>";
echo "<p>Tu Password es: $PHP_AUTH_PW</p>";
}else{
echo "No Has Podido Entrar";
}
}
?>

Bueno, y ya que estoy, para no dejar otro mensaje en el foro, ¿Hay alguna manera de qeu cuando alguien escriba algo con etiquetas html no sean interpretadas al mostrar el texto que escribio? Gracias.
__________________
Charlie.
  #2 (permalink)  
Antiguo 22/06/2003, 08:48
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 14 años, 7 meses
Puntos: 0
Hola, cambia esto
Código PHP:
if($PHP_AUTH_USER='Carlos' && $PHP_AUTH_PW='contra'){ 
por esto:

Código PHP:
if($PHP_AUTH_USER=='Carlos' && $PHP_AUTH_PW=='contra'){ 
Un saludo
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #3 (permalink)  
Antiguo 22/06/2003, 09:25
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.427
Antigüedad: 14 años, 6 meses
Puntos: 7
Sigue Fallando

Pues eso, he cambiado lo que me dijiste, y aun asi sigue pasando lo mismo, es como si no metiese bien la contraseña o el usuario o algo asi, el codigo que tengo es el siguiente:
<?
if (!isset($PHP_AUTH_USER)) {
header("WWW-Authenticate: Basic realm=\"My Realm\"");
header("HTTP/1.0 401 Unauthorized");
echo "El Usuario Introducido no coincide con ningun cliente.\n";
exit;
} else {
if($PHP_AUTH_USER=='Carlos' && $PHP_AUTH_PW=='contra'){
echo "<p>Hola $PHP_AUTH_USER.</p>";
echo "<p>Tu Password es: $PHP_AUTH_PW</p>";
}else{
echo "No Has Podido Entrar";
}
}
?>
__________________
Charlie.
  #4 (permalink)  
Antiguo 22/06/2003, 09:28
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 14 años, 7 meses
Puntos: 0
Hola, prueba poniendo dobles comillas, así:

Código PHP:
if ($PHP_AUTH_USER == "Carlos" && $PHP_AUTH_PW == "contra"){ 
Un saludo
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #5 (permalink)  
Antiguo 22/06/2003, 09:38
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.427
Antigüedad: 14 años, 6 meses
Puntos: 7
Sigue Fallando

Pues eso, he cambiado lo que me dijiste, y aun asi sigue pasando lo mismo, es como si no metiese bien la contraseña o el usuario o algo asi, el codigo que tengo es el siguiente:
<?
if (!isset($PHP_AUTH_USER)) {
header("WWW-Authenticate: Basic realm=\"My Realm\"");
header("HTTP/1.0 401 Unauthorized");
echo "El Usuario Introducido no coincide con ningun cliente.\n";
exit;
} else {
if($PHP_AUTH_USER=="Carlos" && $PHP_AUTH_PW=="contra"){
echo "<p>Hola $PHP_AUTH_USER.</p>";
echo "<p>Tu Password es: $PHP_AUTH_PW</p>";
}else{
echo "No Has Podido Entrar";
}
}
?>
__________________
Charlie.
  #6 (permalink)  
Antiguo 22/06/2003, 12:29
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 14 años, 7 meses
Puntos: 0
hola, pero que hace no te deja entrar?? te da algun error??

saludos
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #7 (permalink)  
Antiguo 22/06/2003, 12:45
 
Fecha de Ingreso: noviembre-2002
Ubicación: Barcelona - España
Mensajes: 270
Antigüedad: 15 años
Puntos: 0
Hola chcma, recuerda poner solo un = y ! como te pongo el ejemplo a continuación.
Espero que te funcione.

if (($PHP_AUTH_USER != 'Carlos') || ($PHP_AUTH_PW != 'contra'))
  #8 (permalink)  
Antiguo 22/06/2003, 12:53
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 14 años, 7 meses
Puntos: 0
Cita:
Mensaje Original por Cocker
Hola chcma, recuerda poner solo un = y ! como te pongo el ejemplo a continuación.
Espero que te funcione.

if (($PHP_AUTH_USER != 'Carlos') || ($PHP_AUTH_PW != 'contra'))

Coker asi es desigualdad, tiene que cambiar la sintaxis del if:

if (($PHP_AUTH_USER != 'Carlos') || ($PHP_AUTH_PW != 'contra')){
echo "No Has Podido Entrar";
}else{
echo "<p>Hola $PHP_AUTH_USER.</p>";
echo "<p>Tu Password es: $PHP_AUTH_PW</p>";
}

PD: Por que pones entre parentesis: ($PHP_AUTH_USER != 'Carlos') ????

Un saludo
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #9 (permalink)  
Antiguo 22/06/2003, 13:03
 
Fecha de Ingreso: noviembre-2002
Ubicación: Barcelona - España
Mensajes: 270
Antigüedad: 15 años
Puntos: 0
Hola Pino, lo pongo así porque lo tengo hecho y en funcionamiento. Si quieres te paso el script entero, pruebalo y verás como funciona
  #10 (permalink)  
Antiguo 22/06/2003, 13:06
Avatar de Pino  
Fecha de Ingreso: abril-2003
Ubicación: Cangas do Morrazo, Pontevedra, Galicia, España, Europa, etc
Mensajes: 490
Antigüedad: 14 años, 7 meses
Puntos: 0
No hace falta que me lo pases, pero me paracia raro, gracias por la aclaración.
Un saludo
__________________
Pïno
Webmaster de Programas Lynx
Usuario Registrado de Linux #327681

Mi cuerpo en windows, pero mi mente pensando en linux.
  #11 (permalink)  
Antiguo 22/06/2003, 14:23
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

chcma, supongo que habras leido la seccion correspondiente a la autentificacion HTTP en el manual oficial, ¿verdad?. Y habras leido que este tipo de autentificacion solo funciona si tienes PHP instalado como modulo de Apache. Y sera asi como tengas tu PHP, porque si no, no te va a funcionar.

Si lo tienes como modulo y sigue sin funcionarte, prueba a poner $_SERVER['PHP_AUTH_USER'] y $_SERVER['PHP_AUTH_PW'].

Mejor que pruebes el ejemplo de http://www.php.net/manual/en/features.http-auth.php (es tu codigo usando superglobales y sin comprobar el usuario/password).

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
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 11:18.