Inlogpagina maken
eigenlijk is de inlogpagina ook een beetje hetzelfde als de registratie pagina..
we moeten weer 2 delen hebben..
dus nu weet je hoe het moet en dan zul je uitkomen op deze basis:
het invulformulier moet de volgende velden bevatten:
- gebruikersnaam
- wachtwoord
- inlog knop
(aan het einde van de pagina in het resultaat script zie je dit formulier, je kan hem natuurlijk ook zelf maken om te oefenen)
de verwerking is ook niet zo heel moeilijk..
zie hier het verwerk stukje:
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
39
40
41
42
43
44
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
39
40
41
42
43
44
<?php
$gebruiker_query = "SELECT * FROM gebruiker WHERE gebruiker_naam = '".mysql_real_escape_string(trim($_POST['gebruikersnaam']))."';";
//we maken een query die de gebruiker ophaalt met de ingegeven
//gebruikersnaam. zodat we daar het md5 gecodeerde wachtwoord van de
// database kunnen 'lenen' om te kijken of die hetzelfde is als de ingevulde.
// zoja dan weten we dat het de goede gebruiker is
$gebruiker_sql = mysql_query($gebruiker_query)or die(mysql_error());
// uitvoeren van de query
$gebruiker_tellen= mysql_num_rows($gebruiker_sql);
// even kijken OF er wel een user bestaat dus tellen we de resultaten
if ($gebruiker_tellen == 1){
// als het resultaat 1 is hebben we dus een gebruiker met de opgegeven naam
// en dan gaan we verder in deze 'if' als het resultaat 0 is slaat hij de hele if
// over
$rij = mysql_fetch_array($gebruiker_sql);
// de gegevens uit de query slaan we op in een array genaamd $rij
if(md5($_POST['wachtwoord']) == $rij['gebruiker_wachtwoord']){
// we coderen het ingegeven wachtwoord met md5 .. als het goede wachtwoord
// is ingetikt moet de md5 code PRECIES hetzelfde zijn als die in de database
// als dat het geval is maken we sessies aan.
session_start();
// deze regel is belangrijk hiermee zorg je dat je sessies kan gaan gebruiken
$_SESSION['gebruiker_id'] = $rij['gebruiker_id'];
$_SESSION['gebruiker_naam'] = $rij['gebruiker_naam'];
$_SESSION['gebruiker_rank'] = $rij['gebruiker_rank'];
// hierboven zetten we de gegevens die we nog nodig hebben in de rest van
// het systeem in sessies.
// dit werkt alvolgt:
// $_SESSION['tekst'] = "hoi marvin!";
// echo $_SESSION['tekst'];
// geeft: hoi marvin!
header('Location: index.php');
// als de sessies zijn aangemaakt laten we ons vanzelf doorsturen naar index.php
}else{
// als het wachtwoord niet overeen komt willen we een melding:
echo 'Fout bij het inloggen. Probeer het opnieuw';
}
}else{
// als er geen resultaten uit de query komen willen we deze melding:
echo 'Fout bij het inloggen. Probeer het opnieuw';
// eigenlijk KAN hier staan 'er zijn geen gebruikers met deze naam'
// maar dit is niet handig natuurlijk..
}
?>
$gebruiker_query = "SELECT * FROM gebruiker WHERE gebruiker_naam = '".mysql_real_escape_string(trim($_POST['gebruikersnaam']))."';";
//we maken een query die de gebruiker ophaalt met de ingegeven
//gebruikersnaam. zodat we daar het md5 gecodeerde wachtwoord van de
// database kunnen 'lenen' om te kijken of die hetzelfde is als de ingevulde.
// zoja dan weten we dat het de goede gebruiker is
$gebruiker_sql = mysql_query($gebruiker_query)or die(mysql_error());
// uitvoeren van de query
$gebruiker_tellen= mysql_num_rows($gebruiker_sql);
// even kijken OF er wel een user bestaat dus tellen we de resultaten
if ($gebruiker_tellen == 1){
// als het resultaat 1 is hebben we dus een gebruiker met de opgegeven naam
// en dan gaan we verder in deze 'if' als het resultaat 0 is slaat hij de hele if
// over
$rij = mysql_fetch_array($gebruiker_sql);
// de gegevens uit de query slaan we op in een array genaamd $rij
if(md5($_POST['wachtwoord']) == $rij['gebruiker_wachtwoord']){
// we coderen het ingegeven wachtwoord met md5 .. als het goede wachtwoord
// is ingetikt moet de md5 code PRECIES hetzelfde zijn als die in de database
// als dat het geval is maken we sessies aan.
session_start();
// deze regel is belangrijk hiermee zorg je dat je sessies kan gaan gebruiken
$_SESSION['gebruiker_id'] = $rij['gebruiker_id'];
$_SESSION['gebruiker_naam'] = $rij['gebruiker_naam'];
$_SESSION['gebruiker_rank'] = $rij['gebruiker_rank'];
// hierboven zetten we de gegevens die we nog nodig hebben in de rest van
// het systeem in sessies.
// dit werkt alvolgt:
// $_SESSION['tekst'] = "hoi marvin!";
// echo $_SESSION['tekst'];
// geeft: hoi marvin!
header('Location: index.php');
// als de sessies zijn aangemaakt laten we ons vanzelf doorsturen naar index.php
}else{
// als het wachtwoord niet overeen komt willen we een melding:
echo 'Fout bij het inloggen. Probeer het opnieuw';
}
}else{
// als er geen resultaten uit de query komen willen we deze melding:
echo 'Fout bij het inloggen. Probeer het opnieuw';
// eigenlijk KAN hier staan 'er zijn geen gebruikers met deze naam'
// maar dit is niet handig natuurlijk..
}
?>
het resultaat zal er ongeveer zo uitzien:
=============inloggen.php=================
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
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
<?php
error_reporting(E_ALL);
include('verbind.php');
// bovenstaan is om alle foutmeldingen op het beeldscherm te zetten.
// en we moeten natuurlijk de verbind.php include omdat we verbinding willen
// met de database
if(isset($_POST['inloggen']))
{
$gebruiker_query = "SELECT * FROM gebruiker WHERE gebruiker_naam = '".mysql_real_escape_string(trim($_POST['gebruikersnaam']))."';";
$gebruiker_sql = mysql_query($gebruiker_query)or die(mysql_error());
$gebruiker_tellen= mysql_num_rows($gebruiker_sql);
if ($gebruiker_tellen == 1){
$rij = mysql_fetch_array($gebruiker_sql);
if(md5($_POST['wachtwoord']) == $rij['gebruiker_wachtwoord']){
session_start();
$_SESSION['gebruiker_id'] = $rij['gebruiker_id'];
$_SESSION['gebruiker_naam'] = $rij['gebruiker_naam'];
$_SESSION['gebruiker_rank'] = $rij['gebruiker_rank'];
header('Location: index.php');
}else{
echo 'Fout bij het inloggen. Probeer het opnieuw';
}
}else{
echo 'Fout bij het inloggen. Probeer het opnieuw';
}
}else{
echo '<table align="center"><form method="POST" action="inloggen.php">';
echo '<tr><td><input type="text" name="gebruikersnaam" value="gebruikersnaam"></td>';
echo '<td><input type="password" name="wachtwoord" value="wachtwoord"></td>';
echo '<td><input type="submit" name="inloggen" value="Inloggen"></td>';
echo '<td><a href="?registreren">registreren</a></td></tr></form></table>';
}
?>
error_reporting(E_ALL);
include('verbind.php');
// bovenstaan is om alle foutmeldingen op het beeldscherm te zetten.
// en we moeten natuurlijk de verbind.php include omdat we verbinding willen
// met de database
if(isset($_POST['inloggen']))
{
$gebruiker_query = "SELECT * FROM gebruiker WHERE gebruiker_naam = '".mysql_real_escape_string(trim($_POST['gebruikersnaam']))."';";
$gebruiker_sql = mysql_query($gebruiker_query)or die(mysql_error());
$gebruiker_tellen= mysql_num_rows($gebruiker_sql);
if ($gebruiker_tellen == 1){
$rij = mysql_fetch_array($gebruiker_sql);
if(md5($_POST['wachtwoord']) == $rij['gebruiker_wachtwoord']){
session_start();
$_SESSION['gebruiker_id'] = $rij['gebruiker_id'];
$_SESSION['gebruiker_naam'] = $rij['gebruiker_naam'];
$_SESSION['gebruiker_rank'] = $rij['gebruiker_rank'];
header('Location: index.php');
}else{
echo 'Fout bij het inloggen. Probeer het opnieuw';
}
}else{
echo 'Fout bij het inloggen. Probeer het opnieuw';
}
}else{
echo '<table align="center"><form method="POST" action="inloggen.php">';
echo '<tr><td><input type="text" name="gebruikersnaam" value="gebruikersnaam"></td>';
echo '<td><input type="password" name="wachtwoord" value="wachtwoord"></td>';
echo '<td><input type="submit" name="inloggen" value="Inloggen"></td>';
echo '<td><a href="?registreren">registreren</a></td></tr></form></table>';
}
?>
===================================
« vorige pagina | volgende pagina »
Inhoudsopgave
- Inleiding
- Database klaarmaken & scriptje voor verbinding sch
- Registratie script maken.
- Inlogpagina maken
- Maak topic
- Voeg topic toe
- Forum overzicht
- Index maken
- Bekijk topic
- Reactie Toevoegen
- Gebruikers pagina en verwijder pagina
- Tot slot
- o nog een pagina over =P