Inlog screen
Ik ben opzoek naar het volgende:
een inlog screen waarbij je z'n los schermpje in beeld ziet komen (beetje een pop up).
Bedoel z'n scherm wat je ook krijgt als je probeert te gaan naar een ftp site.
Iets zoals dit: linkje
Kan iemand mij hiermee helpen. De usernames/passwords komen uit een database.
Dat word keihard html en css-en
Hoezo CSS? De oplossing is toch al gegeven?
Hangt er een beetje van af. De oplossing van - Aar - werkt hartstikke goed. Maar als ik website timmerman zou zijn zou ik de kleuren van de site willen gebruiken bij zo'n login scherm. Dus in dat geval zou je wel even moeten CSSen.
Is het mogelijk om de volledige tekst aan te passen in dat venster. Dus het stukje boven enter password.....
en hoe kan ik uitloggen met die http_auth_user script.
Gewijzigd op 06/11/2013 10:44:45 door christiaan de kleine
Code (php)
1
2
3
2
3
<?php
header("WWW-Authenticate: Basic realm=\"Hier je tekst voor het inlogscherm\"");
?>
header("WWW-Authenticate: Basic realm=\"Hier je tekst voor het inlogscherm\"");
?>
Als je meer wilt aanpassen zou je toch div moeten gebruiken.
Uitloggen doe je door je browser af te sluiten. Of je moet zelf een loguit creëren door een session op te slaan die je dan kunt legen waardoor je bent uitgelogd.
Gewijzigd op 06/11/2013 10:59:58 door Michael -
waar kanik dat het beste neerzetten, want het wekt wel. heb het nu boven aan staan onder de include, maar dat is natuurlijk niet de plek ervoor, want dan wordt je constant uitgelogd.
Op het moment dat je hem aanroept is ie leeg, bij een refresh is ie weer gevuld. Je zou het dus wel kunnen gebruiken om snel een session op false te zetten o.i.d. maar niet om permanent uit te loggen.
Code (php)
Er van uit gaat dat je bent ingelogd geeft dit het volgende resultaat
Code (php)
1
2
3
2
3
//index.php?loguit
Notice: Undefined index: PHP_AUTH_USER
Notice: Undefined index: PHP_AUTH_PW
Notice: Undefined index: PHP_AUTH_USER
Notice: Undefined index: PHP_AUTH_PW
Nadat je de pagina opnieuw aanroept ben je weer ingelogd.
Gewijzigd op 06/11/2013 12:44:59 door Michael -
Code (php)
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
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
<?
include('connections/config.php');//Naar de database connecten.
if(isset($_GET['loguit'])) {
unset($_SERVER['PHP_AUTH_PW']);
unset($_SERVER['PHP_AUTH_USER']);
header("Refresh: 0; URL=http://www.widm-dehavik.nl/login.php");
}
if (!isset($_SERVER['PHP_AUTH_USER']))//Kijken of er al een form is gesubmit, anders een weergeven.
{
unset($_SERVER['PHP_AUTH_USER']);
header("WWW-Authenticate: Basic realm=\"Enter Password.\"");
Header("HTTP/1.0 401 Unauthorized");
exit;
}
elseif(isset($_SERVER['PHP_AUTH_USER']))//Als er een username is gesubmit, kijken of de logininformatie klopt.
{
$sql = "SELECT * FROM users2 WHERE username = '".mysql_real_escape_string($_SERVER['PHP_AUTH_USER'])."' AND password = '".sha1($_SERVER['PHP_AUTH_PW'])."'";//Het paswoord in de database is omgezet met een SHA1 encryptie.
$res = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows ($res) == 1)
{
$row = mysql_fetch_array ($res);//Array opbouwen.
//HIER MOET DE SITE INHOUD
header("Refresh: 3; URL=http://www.google.nl");
echo 'Dag '.$row['username'].'';
echo '<br>U wordt zodadelijk doorverwezen...';
//HIER STOPT DE SITE INHOUD
}else//Als de logininformatie fout is, form opnieuw weergeven.
{
header("WWW-Authenticate: Basic realm=\"Enter Password.\"");
header("HTTP/1.0 401 Unauthorized");
exit;
}
}
?>
include('connections/config.php');//Naar de database connecten.
if(isset($_GET['loguit'])) {
unset($_SERVER['PHP_AUTH_PW']);
unset($_SERVER['PHP_AUTH_USER']);
header("Refresh: 0; URL=http://www.widm-dehavik.nl/login.php");
}
if (!isset($_SERVER['PHP_AUTH_USER']))//Kijken of er al een form is gesubmit, anders een weergeven.
{
unset($_SERVER['PHP_AUTH_USER']);
header("WWW-Authenticate: Basic realm=\"Enter Password.\"");
Header("HTTP/1.0 401 Unauthorized");
exit;
}
elseif(isset($_SERVER['PHP_AUTH_USER']))//Als er een username is gesubmit, kijken of de logininformatie klopt.
{
$sql = "SELECT * FROM users2 WHERE username = '".mysql_real_escape_string($_SERVER['PHP_AUTH_USER'])."' AND password = '".sha1($_SERVER['PHP_AUTH_PW'])."'";//Het paswoord in de database is omgezet met een SHA1 encryptie.
$res = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows ($res) == 1)
{
$row = mysql_fetch_array ($res);//Array opbouwen.
//HIER MOET DE SITE INHOUD
header("Refresh: 3; URL=http://www.google.nl");
echo 'Dag '.$row['username'].'';
echo '<br>U wordt zodadelijk doorverwezen...';
//HIER STOPT DE SITE INHOUD
}else//Als de logininformatie fout is, form opnieuw weergeven.
{
header("WWW-Authenticate: Basic realm=\"Enter Password.\"");
header("HTTP/1.0 401 Unauthorized");
exit;
}
}
?>
als ik nu login.php?loguit aanroep dan blijft ie op ?loguit staan. hoe verhelp ik het dat ie me uit kan loggen...
Dit lijkt me beter. Hij zou dan moeten doorsturen.
in de if van loguit???
Valt te proberen, maar ik geef geen garanties of uitloggen gaat lukken.
moet vervangen door
Maar dit heeft weinig zin omdat ik al aangaf dat je hierna gewoon weer bent ingelogd.
Ook moet je waarschijnlijk vanaf regel 10 in een else zetten, anders wordt de onderste 2 headers uitgevoerd en daardoor werkt de header-location niet. Ook is de mysql veroudert en kun je deze beter vervangen door mysqli.
Albert de Wit op 06/11/2013 09:53:36:
Hangt er een beetje van af. De oplossing van - Aar - werkt hartstikke goed. Maar als ik website timmerman zou zijn zou ik de kleuren van de site willen gebruiken bij zo'n login scherm. Dus in dat geval zou je wel even moeten CSSen.
Klopt dit zag ik ook zo.
**Knip, zo gaan we niet met elkaar om **
Hoe dan ook, de vraager is beantwoord.
Gewijzigd op 13/11/2013 11:29:22 door - Ariën -
Gewijzigd op 13/11/2013 14:29:34 door - Ariën -
- Aar - op 06/11/2013 13:18:52:
Rick, check je PM eventjes zodirect.
Gedaan :)
maar goed wat werkt is het volgende script:
Code (php)
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
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
<?
include('connections/config.php');//Naar de database connecten.
if(isset($_GET['loguit'])) {
unset($_SERVER['PHP_AUTH_PW']);
unset($_SERVER['PHP_AUTH_USER']);
header("Location: http://[email protected]/login.php");
}
elseif (!isset($_SERVER['PHP_AUTH_USER']))//Kijken of er al een form is gesubmit, anders een weergeven.
{
unset($_SERVER['PHP_AUTH_USER']);
header("WWW-Authenticate: Basic realm=\"Enter Password.\"");
Header("HTTP/1.0 401 Unauthorized");
exit;
}
elseif(isset($_SERVER['PHP_AUTH_USER']))//Als er een username is gesubmit, kijken of de logininformatie klopt.
{
$sql = "SELECT * FROM users2 WHERE username = '".mysql_real_escape_string($_SERVER['PHP_AUTH_USER'])."' AND password = '".sha1($_SERVER['PHP_AUTH_PW'])."'";//Het paswoord in de database is omgezet met een SHA1 encryptie.
$res = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows ($res) == 1)
{
$row = mysql_fetch_array ($res);//Array opbouwen.
//HIER MOET DE SITE INHOUD
header("Refresh: 3; URL=http://www.google.nl");
echo 'Dag '.$row['username'].'';
echo '<br>U wordt zodadelijk doorverwezen...';
//HIER STOPT DE SITE INHOUD
}else//Als de logininformatie fout is, form opnieuw weergeven.
{
header("WWW-Authenticate: Basic realm=\"Enter Password.\"");
header("HTTP/1.0 401 Unauthorized");
exit;
}
}
?>
include('connections/config.php');//Naar de database connecten.
if(isset($_GET['loguit'])) {
unset($_SERVER['PHP_AUTH_PW']);
unset($_SERVER['PHP_AUTH_USER']);
header("Location: http://[email protected]/login.php");
}
elseif (!isset($_SERVER['PHP_AUTH_USER']))//Kijken of er al een form is gesubmit, anders een weergeven.
{
unset($_SERVER['PHP_AUTH_USER']);
header("WWW-Authenticate: Basic realm=\"Enter Password.\"");
Header("HTTP/1.0 401 Unauthorized");
exit;
}
elseif(isset($_SERVER['PHP_AUTH_USER']))//Als er een username is gesubmit, kijken of de logininformatie klopt.
{
$sql = "SELECT * FROM users2 WHERE username = '".mysql_real_escape_string($_SERVER['PHP_AUTH_USER'])."' AND password = '".sha1($_SERVER['PHP_AUTH_PW'])."'";//Het paswoord in de database is omgezet met een SHA1 encryptie.
$res = mysql_query($sql) or die(mysql_error());
if (mysql_num_rows ($res) == 1)
{
$row = mysql_fetch_array ($res);//Array opbouwen.
//HIER MOET DE SITE INHOUD
header("Refresh: 3; URL=http://www.google.nl");
echo 'Dag '.$row['username'].'';
echo '<br>U wordt zodadelijk doorverwezen...';
//HIER STOPT DE SITE INHOUD
}else//Als de logininformatie fout is, form opnieuw weergeven.
{
header("WWW-Authenticate: Basic realm=\"Enter Password.\"");
header("HTTP/1.0 401 Unauthorized");
exit;
}
}
?>
weet niet wat precies de volgende regel doet, maar het heeft wel gewerkt.
Dat laat de gebruiker doorsturen naar de gewenste URL.