Guest User

Untitled

a guest
Jun 11th, 2018
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.51 KB | None | 0 0
  1. // Verbindung zur Datenbank
  2. $db = mysqli_connect('localhost', 'id5774309_anmeldung', 'anmeldung', 'id5774309_anmeldung');
  3.  
  4. // Variable deklarieren
  5. $username = "";
  6. $email = "";
  7. $errors = array();
  8.  
  9. // Registrierung hervorrufen
  10. if (isset($_POST['Registrierung_btn'])) {
  11. Registrierung();
  12. }
  13.  
  14. // Login hervorrufen
  15. if (isset($_POST['login_btn'])) {
  16. login();
  17. }
  18.  
  19. if (isset($_GET['logout'])) {
  20. session_destroy();
  21. unset($_SESSION['user']);
  22. header("location: ../login.php");
  23. }
  24.  
  25. // Registrierung Benutzer
  26. function Registrierung(){
  27. global $db, $errors;
  28.  
  29. // Erhält alle eingetragenen Information
  30. $username = e($_POST['username']);
  31. $email = e($_POST['email']);
  32. $password_1 = e($_POST['password_1']);
  33. $password_2 = e($_POST['password_2']);
  34.  
  35. // Üaberprufung der benoetigten punkte
  36. if (empty($username)) {
  37. array_push($errors, "username wird benoetigt");
  38. }
  39. if (empty($email)) {
  40. array_push($errors, "Email wird benoetigt");
  41. }
  42. if (empty($password_1)) {
  43. array_push($errors, "Password wird benoetigt");
  44. }
  45. if ($password_1 != $password_2) {
  46. array_push($errors, "Die Passwörter stimmen nicht uerberein");
  47. }
  48.  
  49. // Registrierung überpruft ob fehler da sind
  50. if (count($errors) == 0) {
  51. $password = md5($password_1);//encrypt password bevor es in die datenbank geht
  52.  
  53. if (isset($_POST['user_type'])) {
  54. $user_type = e($_POST['user_type']);
  55. $query = "INSERT INTO users (username, email, user_type, password)
  56. VALUES('$username', '$email', '$user_type', '$password')";
  57. mysqli_query($db, $query);
  58. $_SESSION['success'] = "Neuer Benutzer erfolgreich erstellt!!";
  59. header('location: home.php');
  60. }else{
  61. $query = "INSERT INTO users (username, email, user_type, password)
  62. VALUES('$username', '$email', 'user', '$password')";
  63. mysqli_query($db, $query);
  64.  
  65. // Erhaelt ID des erstellten benutzers
  66. $logged_in_user_id = mysqli_insert_id($db);
  67.  
  68. $_SESSION['user'] = getUserById($logged_in_user_id); // In der Sitzung eingeloggten Benutzer anmelden
  69. $_SESSION['success'] = "du bist nun eingeloggt";
  70. header('location: index.php');
  71. }
  72.  
  73. }
  74.  
  75. }
  76.  
  77. // Zurückkommen der user array von der id
  78. function getUserById($id){
  79. global $db;
  80. $query = "SELECT * FROM users WHERE id=" . $id;
  81. $result = mysqli_query($db, $query);
  82.  
  83. $user = mysqli_fetch_assoc($result);
  84. return $user;
  85. }
  86.  
  87. // LOGIN USER
  88. function login(){
  89. global $db, $username, $errors;
  90.  
  91. $username = e($_POST['username']);
  92. $password = e($_POST['password']);
  93.  
  94. // Überpruft ob ueberall was eingetragen ist
  95. if (empty($username)) {
  96. array_push($errors, "username wird benoetigt");
  97. }
  98. if (empty($password)) {
  99. array_push($errors, "Password wird benoetigt");
  100. }
  101.  
  102. // Ob keine Fehler da sind
  103. if (count($errors) == 0) {
  104. $password = md5($password);
  105.  
  106. $query = "SELECT * FROM users WHERE username='$username' AND password='$password' LIMIT 1";
  107. $results = mysqli_query($db, $query);
  108.  
  109. if (mysqli_num_rows($results) == 1) { // Benutzer bereits erhalten
  110. // kontrolliert ob Benutzer admin oder User ist
  111. $logged_in_user = mysqli_fetch_assoc($results);
  112. if ($logged_in_user['user_type'] == 'admin') {
  113.  
  114. $_SESSION['user'] = $logged_in_user;
  115. $_SESSION['success'] = "Du bist nun eingeloggt";
  116. header('location: admin/home.php');
  117. }else{
  118. $_SESSION['user'] = $logged_in_user;
  119. $_SESSION['success'] = "Du bist nun eingeloggt";
  120.  
  121. header('location: index.php');
  122. }
  123. }else {
  124. array_push($errors, "Nicht uerbereinstimmende username/password kombination");
  125. }
  126. }
  127. }
  128.  
  129. function isLoggedIn()
  130. {
  131. if (isset($_SESSION['user'])) {
  132. return true;
  133. }else{
  134. return false;
  135. }
  136. }
  137.  
  138. function isAdmin()
  139. {
  140. if (isset($_SESSION['user']) && $_SESSION['user']['user_type'] == 'admin' ) {
  141. return true;
  142. }else{
  143. return false;
  144. }
  145. }
  146.  
  147. function e($val){
  148. global $db;
  149. return mysqli_real_escape_string($db, trim($val));
  150. }
  151.  
  152. function display_error() {
  153. global $errors;
  154.  
  155. if (count($errors) > 0){
  156. echo '<div class="error">';
  157. foreach ($errors as $error){
  158. echo $error .'<br>';
  159. }
  160. echo '</div>';
  161. }
  162. }
Add Comment
Please, Sign In to add comment