Loginclass[simpel in gebruik]
Auteur: lasdesigner - 22 april 2006 - 13:43 - Gekeurd door: nemesiskoen - Hits: 15767 - Aantal punten: 4.88 (4 stemmen)
Login Class;
Ook te gebruiken als:
- Admin Login
- Ban Systeem
Sessies toegevoegt!
Voorbeeld zit er bij, je moet er wel uit kunnen komen. Fouten/verbeteringen pm'en ofzo!
mySQL database is wel handig natuurlijk
:
---------------------------------------
CREATE TABLE `users` (
`gebruikersnaam` varchar(255) collate latin1_general_ci NOT NULL,
`wachtwoord` varchar(255) collate latin1_general_ci NOT NULL,
`rank` int(11) NOT NULL default '1'
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
---------------------------------------
Code:
<?php
class Login {
var $gebruikersnaam;
var $wachtwoord;
var $rank;
function DataBase($host, $gebruikersnaam, $wachtwoord, $database) {
mysql_connect($host, $gebruikersnaam, $wachtwoord);
mysql_select_db($database);
}
function SetGegevens($gebruikersnaam, $wachtwoord) {
$this->gebruikersnaam = $gebruikersnaam; //Set Gebruikersnaam
$this->wachtwoord = $wachtwoord; //Set wachtwoord
$this->rank = Login::BerekenRang();
}
function GeefGegevensWeer() {
echo "Gebruikersnaam: ". $this->gebruikersnaam." <BR /> Wachtwoord: ". $this->wachtwoord ." <BR /> Rank: ". $this->rank ."<BR />";
}
function BerekenRang() {
$query = "SELECT rank FROM users WHERE gebruikersnaam = '".$this->gebruikersnaam ."' AND wachtwoord = '". $this->wachtwoord."'";
$querySQL = mysql_query($query) or die(mysql_error());
$aantal = mysql_num_rows($querySQL);
if($aantal == 1) {
$row = mysql_fetch_assoc($querySQL);
$rank = $row['rank'];
} else {
$rank = 0;
}
return $rank;
}
function CheckAdmin() {
return $this->rank == 2;
}
function CheckBan() {
return $this->rank == 0;
}
function CheckLogin() {
$resultaatBan = Login::CheckBan();
if($resultaatBan != 0) {
$queryCheck = "SELECT gebruikersnaam, wachtwoord FROM users WHERE gebruikersnaam = '". $this->gebruikersnaam. "' AND wachtwoord = '". $this->wachtwoord. "'";
$queryChecker = mysql_query($queryCheck);
if(mysql_num_rows($queryChecker) == 1) { // Als er 1 resultaat is. Is het goed.
$resultaat = 1;
//Sessies zijn natuurlijk ook handig :D (Thx NemesisKoen):
$_SESSION['gebruikersnaam'] = $this->gebruikersnaam;
$_SESSION['rank'] = $this->rank;
} else { // Anders is het niet goed
$resultaat = 0;
}
return $resultaat;
} else {
echo 'Je bent gebanned, of je hebt verkeerde gebruikersnaam / wachtwoord!';
}
}
}
##Aanroepen door:
if(isset($_POST['Loginn'])) {
$user = new Login;
$user->DataBase('host', 'user', 'wachtwoord', 'database');
$user->SetGegevens($_POST['gebruikersnaam'], $_POST['wachtwoord']);
$resultaatLogin = $user->CheckLogin();
if($resultaatLogin == 1) {
echo 'Ingelogd';
} else {
echo 'Niet ingelogd';
}
## Voor kijken of iemand ADMIN is (admin pagina)
## $user = new Login;
## $user->SetGegevens($_POST['gebruikersnaam'], $_POST['wachtwoord']);
## $resultaatAdmin = $user->CheckAdmin();
## if($resultaatAdmin == 1) {
## echo 'Admin is in orde';
## } else {
## echo 'Jíj bent geen admin!';
## }
##Zo kan je ook eentje maken voor ban, o.i.d.
} else {
?>
<form name="form1" method="post" action="">
Gebruikersnaam:
<input name="gebruikersnaam" type="text" id="gebruikersnaam">
<br>
Wachtwoord:
<input name="wachtwoord" type="text" id="wachtwoord">
<br>
<input name="Loginn" type="submit" id="Loginn" value="loginn">
</form>
<?php
}
?>
<?php
class Login {
var $gebruikersnaam ;
var $wachtwoord ;
var $rank ;
function DataBase( $host , $gebruikersnaam , $wachtwoord , $database ) {
}
function SetGegevens( $gebruikersnaam , $wachtwoord ) {
$this -> gebruikersnaam = $gebruikersnaam ; //Set Gebruikersnaam
$this -> wachtwoord = $wachtwoord ; //Set wachtwoord
$this -> rank = Login:: BerekenRang ( ) ;
}
function GeefGegevensWeer( ) {
echo "Gebruikersnaam: " . $this -> gebruikersnaam . " <BR /> Wachtwoord: " . $this -> wachtwoord . " <BR /> Rank: " . $this -> rank . "<BR />" ; }
function BerekenRang( ) {
$query = "SELECT rank FROM users WHERE gebruikersnaam = '" . $this -> gebruikersnaam . "' AND wachtwoord = '" . $this -> wachtwoord . "'" ;
if ( $aantal == 1 ) {
$rank = $row [ 'rank' ] ;
} else {
$rank = 0 ;
}
return $rank ;
}
function CheckAdmin( ) {
return $this -> rank == 2 ;
}
function CheckBan( ) {
return $this -> rank == 0 ;
}
function CheckLogin( ) {
$resultaatBan = Login:: CheckBan ( ) ;
if ( $resultaatBan != 0 ) {
$queryCheck = "SELECT gebruikersnaam, wachtwoord FROM users WHERE gebruikersnaam = '" . $this -> gebruikersnaam . "' AND wachtwoord = '" . $this -> wachtwoord . "'" ;
if ( mysql_num_rows ( $queryChecker ) == 1 ) { // Als er 1 resultaat is. Is het goed. $resultaat = 1 ;
//Sessies zijn natuurlijk ook handig :D (Thx NemesisKoen):
$_SESSION [ 'gebruikersnaam' ] = $this -> gebruikersnaam ;
$_SESSION [ 'rank' ] = $this -> rank ;
} else { // Anders is het niet goed
$resultaat = 0 ;
}
return $resultaat ;
} else {
echo 'Je bent gebanned, of je hebt verkeerde gebruikersnaam / wachtwoord!' ; }
}
}
##Aanroepen door:
if ( isset ( $_POST [ 'Loginn' ] ) ) { $user = new Login;
$user -> DataBase ( 'host' , 'user' , 'wachtwoord' , 'database' ) ;
$user -> SetGegevens ( $_POST [ 'gebruikersnaam' ] , $_POST [ 'wachtwoord' ] ) ;
$resultaatLogin = $user -> CheckLogin ( ) ;
if ( $resultaatLogin == 1 ) {
} else {
}
## Voor kijken of iemand ADMIN is (admin pagina)
## $user = new Login;
## $user->SetGegevens($_POST['gebruikersnaam'], $_POST['wachtwoord']);
## $resultaatAdmin = $user->CheckAdmin();
## if($resultaatAdmin == 1) {
## echo 'Admin is in orde';
## } else {
## echo 'Jíj bent geen admin!';
## }
##Zo kan je ook eentje maken voor ban, o.i.d.
} else {
?>
<form name="form1" method="post" action="">
Gebruikersnaam:
<input name="gebruikersnaam" type="text" id="gebruikersnaam">
<br>
Wachtwoord:
<input name="wachtwoord" type="text" id="wachtwoord">
<br>
<input name="Loginn" type="submit" id="Loginn" value="loginn">
</form>
<?php
}
?>
Download code (.txt)
Stemmen
Niet ingelogd.