Scripts

Inlogscript

Beste mensen, Dit is mijn eerste script, dus verwacht niet al te veel. Ik ben van plan om meerdere versies te maken, dus hoe meer je meld, hoe beter het zal worden! =P Mijn server gebruikt shorttags (

inlogscript
index.php:
[code]
<?
session_start();

include ("config.php");

if(!isset($_SESSION['ID']))
{
	if($_SERVER['REQUEST_METHOD'] != 'POST')
	{
		$query = mysql_query("SELECT * FROM gebruikers WHERE naam = '" . $_POST['gebruiker'] . "' AND pass = '" . md5($_POST['pass']) . "'");
		$resultaat = mysql_num_rows($query);

		if(empty($resultaat))
		{
			echo "<script>alert('Foutieve login.'); document.location.href=('index.php')</script>";
		}
		else
		{
			while($rij = mysql_fetch_assoc($query))
			{
				$id = $rij['id'];
			}
				header("location: index.php");
				$_SESSION['ID'] = $id;
		}
	}
	else
	{
		include("errors.php");
?>
<form method="POST">
<input type="hidden" value="1" name="inloggen">
Gebruikersnaam: <input type="text" name="gebruiker" maxlength="15"><br>
Wachtwoord: <input type="password" name="pass"><br><br>

<input type="Submit" value="Login"><br>
<a href="registreer.php">Registreer</a><br>
</form>
<?
}
}
else
{
header('location: home.php');
} ?>[/code]
registreer.php:
[code]<?
error_reporting(E_ALL);

include("config.php");

if($_SERVER['REQUEST_METHOD'] == 'POST')
{
?>
<form method="POST">
<input type="hidden" value="1" name="reg_gebr">
<b>Gebruikersnaam:</b><br>
<input type="text" name="naam" maxlength="20"> (Maximum 20 tekens)<br>

<b>Email:</b><br>
<input type="text" name="email" maxlength="125"><br>

<b>Wachtwoord:</b><br>
<input type="password" name="pass"> (Minimum 5 tekens)<br>

<b>Bevestig wachtwoord:</b><br>
<input type="password" name="pass2"><br><br>

<input type="Submit" value="Registreer">
<input type="button" value="Annuleer" OnClick="history.go(-1)">
</form>
<?
}
else
{
	if(!empty($_POST['naam']) AND !empty($_POST['email']) AND !empty($_POST['pass']) AND !empty($_POST['pass2']))
	{
		$resultaat = mysql_result(mysql_query("SELECT COUNT(1) FROM gebruikers WHERE naam = '" . $_POST['naam'] . "'"),0);
		if(!empty($resultaat))
		{
			echo "<script>alert('Gebruikersnaam is al in gebruik.'); history.go(-1)</script>";
		}
		else
		{
			if(strlen($_POST['pass']) > 4)
			{
				echo "<script>alert('Wachtwoord te kort.'); history.go(-1)</script>";
			}
			else
			{
				if($_POST['pass'] != $_POST['pass2'])
				{
					echo "<script>alert('Wachtwoorden zijn niet hetzelfde.'); history.go(-1)</script>";
				}
				else
				{
					mysql_query("INSERT INTO gebruikers (naam,pass,email) VALUES
					('" . $_POST['naam'] . "','" . $_POST['pass'] . "','" . md5($_POST['pass']) . "')") or die(mysql_error());
					header('location: index.php?error=2');
				}
			}
		}
	}
	else
	{
		echo "<script>alert('Gelieve alles in te vullen'); history.go(-1)</script>";
	}
}
?>
[/code]
config.php:
[code]
<?
$hostname = "..."; //MySQL Hostname
$username = "..."; //MySQL gebruikersnaam
$password = "..."; //MySQL Wachtwoord
$database = "..."; //MySQL Database

mysql_connect($hostname,$username,$password) or die(mysql_error());
mysql_select_db($database);
?>
[/code]
home.php:
[code]
<?
include("config.php");

if(isset($_SESSION['ID'])) {
	//Hier de inhoud...
} else {
	header('location: index.php?error=1');
}
[/code]
errors.php:
[code]
<?
if(isset($_GET['error'])) {
if($_GET['error'] == 0) {
echo "<b><font color=\"green\">Gefeliciteerd. U kunt dit systeem nu gebruiken.</font></b>";
} elseif($_GET['error'] == 1) {
echo "<b><font color=\"red\">U bent niet ingelogd.</font></b>";
} elseif($_GET['error'] == 2) {
<b><font color=\"blue\">U bent succesvol geregistreerd. U kunt nu inloggen.</font></b>";
}
}
[/code]
SQL:
(Met phpMyAdmin):
[code]
CREATE TABLE `login` (
`id` int NOT NULL auto_increment,
`naam` varchar(20) NOT NULL,
`pass` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
[/code]
(Of heb je geen phpMyAdmin?):
[code]
<?
include("config.php");

mysql_query("CREATE TABLE `login` (
`id` int NOT NULL auto_increment,
`naam` varchar(20) NOT NULL,
`pass` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;") or die(mysql_error());
header('location: index.php?error=0'); ?>[/code]

Reacties

0
Nog geen reacties.