Advertisement
mb_code

Regestrieren.php

Nov 1st, 2018
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.54 KB | None | 0 0
  1. <?php
  2. session_start();
  3. $pdo = new PDO('mysql:host=localhost;dbname=login', 'root', '');
  4. ?>
  5. <!DOCTYPE html>
  6. <html>
  7. <head>
  8.   <title>Registrierung</title>
  9. </head>
  10. <body>
  11.  
  12. <?php
  13. $showFormular = true; //Variable ob das Registrierungsformular anezeigt werden soll
  14.  
  15. if(isset($_GET['register'])) {
  16.     $error = false;
  17.     $email = $_POST['email'];
  18.     $passwort = $_POST['passwort'];
  19.     $passwort2 = $_POST['passwort2'];
  20.     $klasse = $_POST['klasse'];
  21.     if(!filter_var($email, FILTER_VALIDATE_EMAIL)) {
  22.         echo 'Bitte eine gültige E-Mail-Adresse eingeben<br>';
  23.         $error = true;
  24.     }
  25.     if(strlen($passwort) == 0) {
  26.         echo 'Bitte ein Passwort angeben<br>';
  27.         $error = true;
  28.     }
  29.     if($passwort != $passwort2) {
  30.         echo 'Die Passwörter müssen übereinstimmen<br>';
  31.         $error = true;
  32.     }
  33.  
  34.     if(strlen($klasse) == 0) {
  35.         echo 'Bitte deine Klasse angeben<br>';
  36.         $error = true;
  37.     }
  38.  
  39.     //Überprüfe, dass die E-Mail-Adresse noch nicht registriert wurde
  40.     if(!$error) {
  41.         $statement = $pdo->prepare("SELECT * FROM users WHERE email = :email");
  42.         $result = $statement->execute(array('email' => $email));
  43.         $user = $statement->fetch();
  44.  
  45.         if($user !== false) {
  46.             echo 'Diese E-Mail-Adresse ist bereits vergeben<br>';
  47.             $error = true;
  48.         }
  49.     }
  50.  
  51.     //Keine Fehler, wir können den Nutzer registrieren
  52.     if(!$error) {
  53.         $passwort_hash = password_hash($passwort, PASSWORD_DEFAULT);
  54.  
  55.         $statement = $pdo->prepare("INSERT INTO users (email, passwort, klasse) VALUES (:email, :passwort, :klasse)");
  56.         $result = $statement->execute(array('email' => $email, 'passwort' => $passwort_hash, 'klasse' => $klasse));
  57.  
  58.         if($result) {
  59.             echo 'Du wurdest erfolgreich registriert. <a href="login.php">Zum Login</a>';
  60.             $showFormular = false;
  61.         } else {
  62.             echo 'Beim Abspeichern ist leider ein Fehler aufgetreten<br>';
  63.         }
  64.     }
  65. }
  66.  
  67. if($showFormular) {
  68. ?>
  69.  
  70. <form action="?register=1" method="post">
  71. E-Mail:<br>
  72. <input type="email" size="40" maxlength="250" name="email"><br><br>
  73.  
  74. Dein Passwort:<br>
  75. <input type="password" size="40"  maxlength="250" name="passwort"><br>
  76.  
  77. Passwort wiederholen:<br>
  78. <input type="password" size="40" maxlength="250" name="passwort2"><br><br>
  79.  
  80. Deine Klasse:<br>
  81. <input type="klasse" size="40"  maxlength="3" name="klasse"><br>
  82.  
  83. <input type="submit" value="Abschicken">
  84. </form>
  85.  
  86. <?php
  87. } //Ende von if($showFormular)
  88. ?>
  89.  
  90. </body>
  91. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement