http-auth-beveiliging-met-mysql
Gesponsorde koppelingen
PHP script bestanden
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
Tabel opbouw van de database:
CREATE TABLE `users` (
`id` int(11) NOT NULL auto_increment,
`username` varchar(255) NOT NULL default '',
`password` varchar(255) NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
CREATE TABLE `users` (
`id` int(11) NOT NULL auto_increment,
`username` varchar(255) NOT NULL default '',
`password` varchar(255) NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
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
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
<?
include('includes/config.php');//Naar de database connecten.
if (!isset($_SERVER['PHP_AUTH_USER']))//Kijken of er al een form is gesubmit, anders een weergeven.
{
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 users 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.jouwsite.be/test.php");
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('includes/config.php');//Naar de database connecten.
if (!isset($_SERVER['PHP_AUTH_USER']))//Kijken of er al een form is gesubmit, anders een weergeven.
{
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 users 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.jouwsite.be/test.php");
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;
}
}
?>