--sql--
[code]
CREATE TABLE `users` (
`id` INT( 4 ) NOT NULL AUTO_INCREMENT PRIMARY KEY , 
`username` VARCHAR( 100 ) NOT NULL,
`password` VARCHAR( 100 ) NOT NULL,
`activated` int( 11 ) NOT NULL,
`activate_code` VARCHAR( 100 ) NOT NULL,
`email` VARCHAR( 100 ) NOT NULL,
`ip` VARCHAR( 100 )
) ENGINE = MYISAM ;
[/code]
--config.php--
[code]
<?php
mysql_connect ("localhost", "xxx", "xxx") or die ('I cannot connect to the database because: ' . mysql_error());
mysql_select_db ("xxx");
?>
[/code]
--head_class.php--
[code]
<?php
session_start();
include_once('config.php');
// Script is made by Manaus Lavens (msn@nousie.com)
// You have to change the vars
class loginsys{
	var $websiteurl 		= "http://www.website.com";	
	var $email		 		= "msn@nousie.com";
	var $website		 		= "website.com";
 	var $email_activate 	= 1;
	function login($username, $password){
		$username	= mysql_real_escape_string($username);
		$password	= MD5($password);	
		$select		= "SELECT `id`,`username`,`password`, `activated` FROM `users` WHERE `username` = '".$username."'";
		$query		= mysql_query($select) OR DIE (mysql_error());
		if(mysql_num_rows($query) == 1){
			$row = mysql_fetch_assoc($query);
			if($row['activated'] == 0 && $this->email_activation == 1){
			 return "Uw account is nog niet geactiveerd! Klik <a href=\"activate.php\">hier</a>!";
			 }
			else{
				if($password == $row['password']){
			 		$_SESSION['id'] = $row['id'];
					return "Welkom".htmlentities($row['username']);
				}
				else{
					return "Er is een foutief paswoord ingevoerd!";	
				}	
			}
		}
		else{
			return "Gebruikersnaam bestaat niet!";	
		}
	}
	function register($username, $password, $email){
	 	$username	= mysql_real_escape_string($username);
	 	$password	= MD5($password);
	 	$ip			= $_SERVER['REMOTE_ADDR'];
		$select 	= "SELECT count(*) AS `totaal` FROM `users` WHERE username='".$username."'";
		$query		= mysql_query($select) OR DIE(mysql_error());
		$row		= mysql_fetch_assoc($query);
		if($row['totaal'] == 0){
				if($this->email_activate == 1){
					$actcode = mt_srand((double)microtime()*100000);
      				while(strlen($actcode) <= 10) {
       					$i = chr(mt_rand (0,255));
       					if(eregi("^[a-z0-9]$", $i)) {
       						 $actcode = $actcode.$i;
       					}
      				}
				}
				else{
					$actcode = "";
				}
				$sql = "INSERT INTO `users` SET 
				`username` = '".$username."',
				`password` = '".$password."',
				`email` = '".$email."',
				`ip` = '".$ip."',
				`activate_code` = '".$actcode."'";
				$insert_query = mysql_query($sql) OR DIE(mysql_error());
				$user_id = mysql_insert_id();
				if($this->email_activate == 1){
					$to = $email; 
					$sender = $this->email;
					$name = $this->website;
					$headers = "From: '".$this->website."' <".$this->email.">\r\n";
					$headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; 
					$message = "Beste ".$username.",
					U bent succesvol geregistreerd op ".$this->website."
					U kunt uw account avtiveren op onderstaande link
					".$this->websiteurl."/activeer.php?code=".$actcode."
					Activatie code: ".$actcode."
					Nogmaal bedankt!";
					if(mail($to, $subject, $message, $headers)){
						return "U bent nu geregistreerd, u ontvangt binnenkort een mail met de activatie link<br>Vergeet niet te kijken in je ongewenste mail!";
					}
					else{
						return "Er was een fout tijden het verzenden van de mail!";
					}
				
				}
				else{
					return "U bent succesvol geregistreed, u kunt nu inloggen";
				}
				
				
		}
		else{
			return "Sorry maar deze gebruikersnaam bestaat al!";	
		}
	}
	function activate_account($code){
		$id 		= mysql_real_escape_string($id);
		$code 		= mysql_real_escape_string($code);
		$select 	= "SELECT `id` FROM `users` WHERE `activate_code` = '".$code."'";
		$query 		= mysql_query($select) OR DIE (mysql_error());
		$row		= mysql_fetch_assoc($query);
		if(mysql_num_rows($query) == 1){
		 	$update = mysql_query("UPDATE `users` SET `activated` = '1', activate_code = '' WHERE `id` = '".$row['id']."'") OR DIE (mysql_error());
			return "Succesvoll geactiveerd, u kunt nu inloggen!";
		}
		else{
			return "Account niet geactiveerd, verkeerde actcode!";
		}
	}
	function logout(){
		session_destroy();
		return "Succesvol uitgelogd!";
	}
	//paswoord change nog niet erin gemaakt...
	function change_password($oud, $nieuw, $id){
		$select 	= "SELECT `password` FROM `users` WHERE `id` = '".id."'";
		$query 		= mysql_query($select) OR DIE (mysql_error());
		$row		= mysql_fetch_assoc($query);
		if(MD5($oud) == $row['password']){
			$nieuw 		= MD5($nieuw);
			$query2 	= mysql_query("UPDATE `users` SET `password` = '".$nieuw."' WHERE `id` = '".$id."'") OR DIE (mysql_error());
			return "Paswoord succesvol veranderd!";	
		}
		else{
			return "Oud paswoord klopt niet!";
		}
	}
}
$doe = new loginsys();
?>
[/code]

--login.php--
[code]
<?php
include_once('head_class.php');
if(isset($_POST['submit'])){
	if(empty($_POST['username'])){
		echo'Geen username ingevuld!';
	}
	elseif(empty($_POST['password'])){
		echo'Geen paswoord ingevuld!';
	}
	else{
		echo $doe->login($_POST['username'], $_POST['password']);
	}
}
else{
	echo'<form method="post"><br>
	Username: <input type="text" name="username" value="username"><br>
	Paswoord: <input type="password" name="password" value="password"><br>
	<input type="submit" name="submit" value="Log in!">
	</form>';
}
?>
[/code]
--registreer.php--
[code]
<?php
include_once('head_class.php');
function checkmail($mail) 
{
    $email_host = explode("@", $mail); 
    $email_host = $email_host['1'];
    $email_resolved = gethostbyname($email_host); 
    if ($email_resolved != $email_host && eregi("^[0-9a-z]([-_.~]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,4}$",$mail)) {
    	return true; 
    }
	else{
		return false;
	}
} 
if(isset($_POST['submit'])){
	if(empty($_POST['username'])){
		echo'Geen username ingevuld!';
	}
	elseif(empty($_POST['password']) OR empty($_POST['password2'])){
		echo'Geen paswoord ingevuld!';
	}
	elseif($_POST['password'] != $_POST['password2']){
		echo'Paswoorden komen niet overeen!';
	}
	elseif(!checkmail($_POST['email'])){
		echo'Ongeldig email adres!';
	}
	else{
		echo $doe->register($_POST['username'], $_POST['password'], $_POST['email']);
	}
}
else{
	echo'<form method="post"><br>
	Username: <input type="text" name="username" value="username"><br>
	Paswoord: <input type="password" name="password" value="password"><br>
	Paswoord her-typ: <input type="password" name="password2" value="password"><br>
	Email: <input type="text" name="email" value="email"><br>
	<input type="submit" name="submit" value="Log in!">
	</form>';
}
?>
[/code]
--activeer.php
[code]
<?php
include_once('head_class.php');
if(isset($_GET['code'])){
		echo $doe->activate_account($_GET['code']);
}
else{
	echo'<form method="get"><br>
	Code: <input type="text" name="code" value="Activeer code"><br>
	<input type="submit" value="Activeer">
	</form>';
}
?>
[/code]

Veel plezier, post een comment please:)