Loginclass[simpel in gebruik]
Auteur: lasdesigner - 22 april 2006 - 13:43 - Gekeurd door: nemesiskoen - Hits: 15277 - 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. |
|