Uitloggen met WWW-authenticate mogelijk?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Leon Kunst

Leon Kunst

27/01/2006 01:17:00
Quote Anchor link
Hallo, op mijn website gebruik ik op verschillende pagina's (oa admin gedeelte) dit script om in te loggen, en om ingelogd te blijven;

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
error_reporting(E_ALL);
$auth = false;

$user = array("--","--");
$pass = array("--","--");

$num = count($user);

if (isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW'])) {
    for($i=0; $i<$num; $i++) {
        if($_SERVER['PHP_AUTH_USER'] == $user[$i] && $_SERVER['PHP_AUTH_PW'] == $pass[$i])
            $auth = true;
    }
}


if(!$auth) {
    header('WWW-Authenticate: Basic realm="admin section"');    
    header('HTTP/1.0 401 Unauthorized');
      
    echo '<center><h1>Authentication failed</h1>Username and Password required<br><br>Private Section !!!</center>';
    exit;
}
{


?>


is het ook mogelijk om daar weer uit te loggen? de enige manier die ik momenteel weet is door de browser te sluiten (alle openstaande)

kan het ook via een script? ik heb dit oa al geprobeerd;

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?

$auth
= false;

if (isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW'])) {
    
            $auth = false;
            
            
    
    }
        
?>


maar dan werkt het niet :( (hij geeft geen error ofzo, maar ik weet gwn dat ik nog ingelogd ben, aan de hand van een check).
 
PHP hulp

PHP hulp

16/11/2024 05:01:07
 
Kalle P

Kalle P

27/01/2006 01:36:00
Quote Anchor link
logout.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
<?php
if (!isset($_GET['quit'])) { ?>

<h4>To complete your log out, please click "OK" then "Cancel" in
this <a href="logout.php?quit=y">log in box</a>. Do not fill in a
password. This should clear your ID and password from the cache of your
browser.
<blockquote>Note: Logging in from this particular box is
disabled!</blockquote>
<p>Go <a href="/">back to the site</a>.</h4>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
} else {
       header('WWW-Authenticate: Basic realm="admin section"');
       header('HTTP/1.0 401 Unauthorized');
       // if a session was running, clear and destroy it
       session_start();
       session_unset();
       session_destroy();
       echo "<h3>Logged out!</h3><h4>Go <a href=\"/\">back to the site</a>.</h4>";
}

?>
Gewijzigd op 27/01/2006 01:39:00 door Kalle P
 
Leon Kunst

Leon Kunst

27/01/2006 01:48:00
Quote Anchor link
script doet het niet, ik maak eruit op, dat ik weer zo'n loginschermpje moet krijgen?

maar die krijg ik dus niet, en waar trekt hij die $_GET['quit']

vandaan?
 
Leon Kunst

Leon Kunst

27/01/2006 01:51:00
Quote Anchor link
hmm, wacht even, ik stoei ermee, en kom al verder, GET moest post zijn, en dan alles bovenaan zetten, hmm nog wat errors, ik stoei door
 
Kalle P

Kalle P

27/01/2006 01:51:00
Quote Anchor link
Ik kan het zelf niet controleren... maar hij haalt die GET uit de link waarop je moet klikken, en als je dat niet hebt gedaan... laat ie de tekst zien.

<h4>To complete your log out, please click "OK" then "Cancel" in
this <a href="logout.php?quit=y">log in box</a>. Do not fill in a
password. This should clear your ID and password from the cache of your
browser.
<blockquote>Note: Logging in from this particular box is
disabled!</blockquote>
<p>Go <a href="/">back to the site</a>.</h4>
 
Kalle P

Kalle P

27/01/2006 01:53:00
Quote Anchor link
Hij kijkt na of je de link <a href="logout.php?quit=y">log in box</a> hebt geklikt daar, zo nee laat ie de tekst eronder zien... Heb je die wel aan geklikt dan logged ie uit. Je moet wel je pagina logout.php laten heten.
 
Leon Kunst

Leon Kunst

27/01/2006 01:57:00
Quote Anchor link
hmm, inderdaad, de link en alles werkt wel met GET. maar als ik dan op ok klik en vervolgens op annuleren, dan kom ik bij de;

You are not authorized to view this page
The URL you attempted to reach has an ISAPI or CGI application installed that verifies user credentials before proceeding. This application cannot verify your credentials.

page van IIS.

Ik krijg dus niet te zien dat ik uitgelogd ben...
 
Kalle P

Kalle P

27/01/2006 02:05:00
Quote Anchor link
http://logout:logout@{$_SERVER['SERVER_NAME']}/nice_logout_page.php

En anders moet je even kijken op:
http://nl2.php.net/features.http-auth
 
Leon Kunst

Leon Kunst

27/01/2006 02:10:00
Quote Anchor link
ik weet niet awt ik met die 1e zin moest

het is in ieder geval een ongeldige url.

ik lees morgen de andere link even goed door, ik ga nu slapen (gaapt)

bedankt in iedergeval voor je aandacht!!!

Groeten! :)
 
Kalle P

Kalle P

27/01/2006 02:30:00
Quote Anchor link
Graag gedaan
 
Jelmer -

Jelmer -

27/01/2006 07:49:00
Quote Anchor link
Ik vermoed dat je een bepaalde header moet sturen, aangezien bij iedere aanvraag de browser een header verstuurt ipv sessions.

Misschien dat header('HTTP/1.0 401 Unauthorized'); werkt als remblok. dus idd
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php if(isset($_GET['logout'])){
       header('HTTP/1.0 401 Unauthorized');
}

?>

en dan gewoon aanvragen met pagina.php?logout=true

Kan ook een andere header zijn, maar dan moet je even in de documentatie van HTTP1.1 protocol zoeken.
 
Leon Kunst

Leon Kunst

27/01/2006 13:42:00
Quote Anchor link
hmm, als ik dan geen gebruikersnaam of wachtwoord in vul, en dus gewoon op annuleren klik word ik wel uitgelogd, maar als ik vervolgens naar admin gedeelte wil, hoef ik niet eens een wachtwoord weer in te vullen... :P ik ben in 1x binnen...
 
Kalle P

Kalle P

27/01/2006 14:05:00
Quote Anchor link
Er stond wel op die site (php.net), dat er geen echte goede manier is om uit te loggen.
 
Leon Kunst

Leon Kunst

27/01/2006 23:16:00
Quote Anchor link
ja ik zag het... verdorie, dan zal ik dus wel compleet inlog systeem moeten maken? gaat weer uren miss dagen werk in zittne voor ik dat up en running heb, want ik wil dus, dat als je ingelogd bent, dat er op de gewone site ook extra opties bij komen (bij elke pagina met text bijv: 'bewerk deze pagina')
 
Leon Kunst

Leon Kunst

27/01/2006 23:17:00
Quote Anchor link
ja ik zag het... verdorie, dan zal ik dus wel compleet inlog systeem moeten maken? gaat weer uren miss dagen werk in zittne voor ik dat up en running heb, want ik wil dus, dat als je ingelogd bent, dat er op de gewone site ook extra opties bij komen (bij elke pagina met text bijv: 'bewerk deze pagina') ik moet dus een simpel maar veilig inlog systeem hebben... die met een simpele check kan kijken of ik ingelogd ben, zodat ik een if = ingelogd dan: geef knop met bewerken weer

mogelijk is..
 
Eris -

Eris -

27/01/2006 23:41:00
Quote Anchor link
browser sluiten werkt altijd
 
Leon Kunst

Leon Kunst

28/01/2006 15:20:00
Quote Anchor link
ja dat weet ik :P ma dat is niet echt mooi hea... gwn ff uitlogge dat zou mooi zijn :P
 

28/01/2006 15:25:00
Quote Anchor link
Ik sluit mijn Firefox nooit af dus :-)
 
Leon Kunst

Leon Kunst

28/01/2006 15:32:00
Quote Anchor link
*zucht* gebruik opera man :P
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.