Nieuw lid |
|
Wel ik ben afgelopen dagen bezig geweest met heel wat research etc voor eindelijk eens php en mysql onder de knie te krijgen. Echter een contactform of een gb is geen probleem (raar maar waar) maar een login blijkt dus niet te gaan mijn script is:
de database naam is : jdesign
table : admin
query:
CREATE TABLE admin (
id int(1) NOT NULL auto_increment,
naam varchar(50) NOT NULL default '',
passwd varchar(100) NOT NULL default '',
PRIMARY KEY (id),
KEY id (id)
) TYPE=MyISAM;
****login.php*****
***************
<?php
//start output buffering
ob_start();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>firstphp</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
//hier word de connectie gelegd naar de db voor de admin
mysql_connect("localhost","johan","johan");
mysql_select_db("jdesign");
//nu gaan we de query uit de db halen die we nodig hebben
$naam = $_POST['naam'];
$pwd = $_POST['wachtwoord'];
$ok = $_POST['ok'];
$table = 'admin';
$redirect = 'admin.php';
if($ok)
{
$resultaat = mysql_query("SELECT *
FROM ".$table."
WHERE naam = $naam");
$gegevens = mysql_fetch_array($resultaat);
if($gegevens['naam'] != $naam) //controle van de username
{
echo '<center><font color="red"><b>Username ' .$naam. ' niet gevonden!!</b></font><center>';
}
else if(md5($pwd) == $gegevens['passwd'])
{
//registreren van de sessie
session_start(); //functie gebruikt voor het registreren van een sessie, gebruikmakend van een cookie (zie verder)
$_SESSION['user'] = $naam;
//nu moeten we dus de beveiligde page weergeven, een redirection gebeurt met de functie "header"
header("Location: " .$redirect);
}
else
{
echo '<center><font color="red"><b>Password incorrect for' .$naam. '</b></font></center>';
}
}
?>
<form method="post" action="<?php echo $PHP_SELF; ?>">
<input name="naam" type="text" id="naam">
<br>
<input name="wachtwoord" type="password" id="wachtwoord">
<br>
<input name="zenden" type="submit" value="OK" width="50" id="ok">
</form>
</body>
</html>
<?php //start output buffering ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>firstphp</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <?php //hier word de connectie gelegd naar de db voor de admin //nu gaan we de query uit de db halen die we nodig hebben $naam = $_POST['naam']; $pwd = $_POST['wachtwoord']; $ok = $_POST['ok']; $table = 'admin'; $redirect = 'admin.php'; if($ok) { FROM ".$table." WHERE naam = $naam"); if($gegevens['naam'] != $naam) //controle van de username { echo '<center><font color="red"><b>Username ' .$naam. ' niet gevonden!!</b></font><center>'; } else if(md5($pwd) == $gegevens['passwd']) { //registreren van de sessie session_start(); //functie gebruikt voor het registreren van een sessie, gebruikmakend van een cookie (zie verder) $_SESSION['user'] = $naam; //nu moeten we dus de beveiligde page weergeven, een redirection gebeurt met de functie "header" header("Location: " .$redirect); } else { echo '<center><font color="red"><b>Password incorrect for' .$naam. '</b></font></center>'; } } ?> <form method="post" action=" <?php echo $PHP_SELF; ?>"> <input name="naam" type="text" id="naam"> <br> <input name="wachtwoord" type="password" id="wachtwoord"> <br> <input name="zenden" type="submit" value="OK" width="50" id="ok"> </form> </body> </html>
De toekomstige admin page bevat nog geen functionaliteit, maar de hoofdzaak is dat deze beveiligd is voorlopig.
***admin.php***
*************
<?php
session_start();
if(!session_is_registered('user')) die ('protected page!!!');
?>
<html>
<head>
<title>adminpage</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
dit is de admin page
</body>
</html>
<?php ?> <html> <head> <title>adminpage</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> dit is de admin page </body> </html>
Ik hoop dat een van jullie mij kan verder helpen met mijn probleem wat ik krijg er kop nog staart aan waarom het niet bold, het is dus de bedoeling dat ik kan inloggen en dat mn page dan redirect naar admin.php.
|