login  Naam:   Wachtwoord: 
Registreer je!
 Scripts:

Scripts > PHP > Beveiliging > Loginclass[simpel in gebruik]

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:
  1. <?php
  2. class Login {
  3. var $gebruikersnaam;
  4. var $wachtwoord;
  5. var $rank;
  6.  
  7. function DataBase($host, $gebruikersnaam, $wachtwoord, $database) {
  8. mysql_connect($host, $gebruikersnaam, $wachtwoord);
  9. mysql_select_db($database);
  10. }
  11.  
  12. function SetGegevens($gebruikersnaam, $wachtwoord) {
  13. $this->gebruikersnaam = $gebruikersnaam; //Set Gebruikersnaam
  14. $this->wachtwoord = $wachtwoord; //Set wachtwoord
  15. $this->rank = Login::BerekenRang();
  16. }
  17.  
  18. function GeefGegevensWeer() {
  19. echo "Gebruikersnaam: ". $this->gebruikersnaam." <BR /> Wachtwoord: ". $this->wachtwoord ." <BR /> Rank: ". $this->rank ."<BR />";
  20. }
  21. function BerekenRang() {
  22. $query = "SELECT rank FROM users WHERE gebruikersnaam = '".$this->gebruikersnaam ."' AND wachtwoord = '". $this->wachtwoord."'";
  23. $querySQL = mysql_query($query) or die(mysql_error());
  24. $aantal = mysql_num_rows($querySQL);
  25.  
  26. if($aantal == 1) {
  27. $row = mysql_fetch_assoc($querySQL);
  28. $rank = $row['rank'];
  29. } else {
  30. $rank = 0;
  31. }
  32. return $rank;
  33. }
  34.  
  35. function CheckAdmin() {
  36. return $this->rank == 2;
  37. }
  38.  
  39. function CheckBan() {
  40. return $this->rank == 0;
  41. }
  42.  
  43. function CheckLogin() {
  44. $resultaatBan = Login::CheckBan();
  45. if($resultaatBan != 0) {
  46.  
  47. $queryCheck = "SELECT gebruikersnaam, wachtwoord FROM users WHERE gebruikersnaam = '". $this->gebruikersnaam. "' AND wachtwoord = '". $this->wachtwoord. "'";
  48. $queryChecker = mysql_query($queryCheck);
  49.  
  50. if(mysql_num_rows($queryChecker) == 1) { // Als er 1 resultaat is. Is het goed.
  51. $resultaat = 1;
  52. //Sessies zijn natuurlijk ook handig :D (Thx NemesisKoen):
  53. $_SESSION['gebruikersnaam'] = $this->gebruikersnaam;
  54. $_SESSION['rank'] = $this->rank;
  55. } else { // Anders is het niet goed
  56. $resultaat = 0;
  57. }
  58.  
  59. return $resultaat;
  60. } else {
  61. echo 'Je bent gebanned, of je hebt verkeerde gebruikersnaam / wachtwoord!';
  62. }
  63. }
  64. }
  65.  
  66. ##Aanroepen door:
  67. if(isset($_POST['Loginn'])) {
  68. $user = new Login;
  69. $user->DataBase('host', 'user', 'wachtwoord', 'database');
  70. $user->SetGegevens($_POST['gebruikersnaam'], $_POST['wachtwoord']);
  71. $resultaatLogin = $user->CheckLogin();
  72. if($resultaatLogin == 1) {
  73. echo 'Ingelogd';
  74. } else {
  75. echo 'Niet ingelogd';
  76. }
  77.  
  78. ## Voor kijken of iemand ADMIN is (admin pagina)
  79. ## $user = new Login;
  80. ## $user->SetGegevens($_POST['gebruikersnaam'], $_POST['wachtwoord']);
  81. ## $resultaatAdmin = $user->CheckAdmin();
  82. ## if($resultaatAdmin == 1) {
  83. ## echo 'Admin is in orde';
  84. ## } else {
  85. ## echo 'Jíj bent geen admin!';
  86. ## }
  87.  
  88. ##Zo kan je ook eentje maken voor ban, o.i.d.
  89.  
  90. } else {
  91. ?>
  92. <form name="form1" method="post" action="">
  93. Gebruikersnaam:
  94. <input name="gebruikersnaam" type="text" id="gebruikersnaam">
  95. <br>
  96. Wachtwoord:
  97. <input name="wachtwoord" type="text" id="wachtwoord">
  98. <br>
  99. <input name="Loginn" type="submit" id="Loginn" value="loginn">
  100. </form>
  101. <?php
  102. }
  103. ?>
Download code! Download code (.txt)

 Stemmen
Niet ingelogd.

 Reacties
Post een reactie
Lees de reacties (21)
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.032s