Avatar billede stine_grith Nybegynder
24. maj 2006 - 10:26 Der er 10 kommentarer og
1 løsning

finde user udfra .htaccess

Jeg har lavet et password beskyttet område med .htaccess og htpasswd, hvordan kan jeg finde ud af hvilken bruger der er logget ind?
Avatar billede tdafoobar Nybegynder
24. maj 2006 - 10:30 #1
$_SERVER['PHP_AUTH_USER'] måske, men ikke sikkert. Hvis den ikke kan gøre det, kan du ikke aflæse værdien.
Avatar billede stine_grith Nybegynder
24. maj 2006 - 10:38 #2
nope - det fungerer ikke - desværre, så må jeg nok lave en anden login.
Avatar billede tdafoobar Nybegynder
24. maj 2006 - 10:43 #3
trick:

$_SERVER['PHP_AUTH_USER'] og den tilhørende login giver dig en loginboks som ligner .htaccess, men hvor du kan aflæse værdien.

Dette er en PHP metode (hvor .htaccess er en Apache metode), som kun virker på Apache server.
Avatar billede tdafoobar Nybegynder
24. maj 2006 - 10:44 #4
Eksemple:

<?php

function validate_user($username, $password)
{
  $username = addslashes($username);
  $password = addslashes($password);
  $password = md5($password);
  $res = @mysql_query("SELECT
                              userID
                      FROM   
                              users
                      WHERE
                              username='".$username."'
                      AND
                              password='".$password."'
                      LIMIT 1
                      ");
  return(@mysql_num_rows($res) == 1);
}

function authenticate_user()
{
  $is_logged_in = false;
  if(isset($_SERVER['PHP_AUTH_USER']))
  {
    $is_logged_in = validate_user($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']);
  }
  if(!$is_logged_in)
  {
    header('WWW-Authenticate: Basic realm="Administration"');
    header('HTTP/1.0 401 Unauthorized');
    echo "<p>NO ACCESS !</p>\n";
    exit;
  }
}

authenticate_user();

?>
Avatar billede stine_grith Nybegynder
24. maj 2006 - 12:30 #5
tusinde tak - den napper jeg. Laver du lige et svar så jeg kan give dig point?
Avatar billede tdafoobar Nybegynder
24. maj 2006 - 12:51 #6
moo
Avatar billede fixxxer Nybegynder
24. maj 2006 - 13:36 #7
$_SERVER['REMOTE_USER']
Avatar billede tdafoobar Nybegynder
24. maj 2006 - 13:39 #8
fixxxer , den findes ikke :p du tænker på REMOVE_HOST.

http://dk2.php.net/reserved.variables
Avatar billede stine_grith Nybegynder
24. maj 2006 - 18:59 #9
Jeg forsøgte med $_SERVER['REMOTE_USER'] og den fungerer faktisk. Tak endnu engang, og desværre kan jeg jo ikke give point til jer begge, da points allerede er givet.
Avatar billede fixxxer Nybegynder
24. maj 2006 - 19:31 #10
REMOTE_USER findes skam, men ikke på listen over $_SERVER variabler
Avatar billede showsource Seniormester
25. maj 2006 - 09:49 #11
$_SERVER["PHP_AUTH_USER"] og $_SERVER["PHP_AUTH_PW"] findes ikke hvis PHP kører i safe_mode
Så er det kun $_SERVER["REMOTE_USER"]
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester