1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Downloads
  4. Galerie
    1. Alben
  5. Toolbox
    1. Passwort Generator
    2. Portchecker
  6. Mitglieder
    1. Mitgliedersuche
    2. Benutzer online
    3. Trophäen
    4. Team
Do: 17 Juli 2025
  • Anmelden oder registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Forum
  • Dateien
  • Seiten
  • Bilder
  • Erweiterte Suche

Schön, dass du den Weg zu NodeZone.net gefunden hast! Aktuell bist du nicht angemeldet und kannst deshalb nur eingeschränkt auf unsere Community zugreifen. Um alle Funktionen freizuschalten, spannende Inhalte zu entdecken und dich aktiv einzubringen, registriere dich jetzt kostenlos oder melde dich mit deinem Account an.

Anmelden oder registrieren
    1. Nodezone.net Community
    2. Forum
    3. Entwicklung & Scripting
    4. Webentwicklung
    5. HTML, CSS, PHP, JS

    Login/Register

    • MILLER-CONTROLS
    • 3. August 2016 um 19:52
    • MILLER-CONTROLS
      Amateur
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      234
      Bilder
      9
      • 3. August 2016 um 19:52
      • #1

      Servus,

      habe hier ein Problem mit meinem Login

      Das ist mein Register bzw Login .php

      Code
      <?php 
      session_start();
      $pdo = new PDO('mysql:host=localhost;dbname=mazy', 'root', '******');
      if(isset($_GET['login'])) {
      	$email = $_POST['email'];
      	$passwort = $_POST['passwort'];
      	$statement = $pdo->prepare("SELECT * FROM users WHERE email = :email");
      	$result = $statement->execute(array('email' => $email));
      	$user = $statement->fetch();
      	//Überprüfung des Passworts
      	if ($user !== false && password_verify($passwort, $user['passwort'])) {
      		$_SESSION['userid'] = $user['id'];
      		die('Login erfolgreich. Weiter zu <a href="geheim.php">internen Bereich</a>');
      	} else {
      		$errorMessage = "E-Mail oder Passwort war ungültig<br>";
      	}
      }
      ?>
        <?php 
      if(isset($errorMessage)) {
      	echo $errorMessage;
      }
      ?>
      <form action="?login=1" method="post">
      E-Mail:<br>
      <input type="email" size="40" maxlength="250" name="email"><br><br>
      Dein Passwort:<br>
      <input type="password" size="40"  maxlength="250" name="passwort"><br>
      <input type="submit" value="Abschicken">
      </form>
      Alles anzeigen


      PHP: register.php
      <?php 
      session_start();
      $pdo = new PDO('mysql:host=localhost;dbname=mazy', 'root', '*******');
      ?>
      
      
      
      
        <?php
      $showFormular = true; //Variable ob das Registrierungsformular anezeigt werden soll
      if(isset($_GET['register'])) {
      	$error = false;
      	$email = $_POST['email'];
      	$passwort = $_POST['passwort'];
      	$passwort2 = $_POST['passwort2'];
      	if(!filter_var($email, FILTER_VALIDATE_EMAIL)) {
      		echo 'Bitte eine gültige E-Mail-Adresse eingeben<br>';
      		$error = true;
      	} 	
      	if(strlen($passwort) == 0) {
      		echo 'Bitte ein Passwort angeben<br>';
      		$error = true;
      	}
      	if($passwort != $passwort2) {
      		echo 'Die Passwörter müssen übereinstimmen<br>';
      		$error = true;
      	}
      	//Überprüfe, dass die E-Mail-Adresse noch nicht registriert wurde
      	if(!$error) { 
      		$statement = $pdo->prepare("SELECT * FROM users WHERE email = :email");
      		$result = $statement->execute(array('email' => $email));
      		$user = $statement->fetch();
      		if($user !== false) {
      			echo 'Diese E-Mail-Adresse ist bereits vergeben<br>';
      			$error = true;
      		}	
      	}
      	//Keine Fehler, wir können den Nutzer registrieren
      	if(!$error) {	
      		$passwort_hash = password_hash($passwort, PASSWORD_DEFAULT);
      		$statement = $pdo->prepare("INSERT INTO users (email, passwort) VALUES (:email, :passwort)");
      		$result = $statement->execute(array('email' => $email, 'passwort' => $passwort_hash));
      		if($result) {		
      			echo 'Du wurdest erfolgreich registriert. <a href="login.php">Zum Login</a>';
      			$showFormular = false;
      		} else {
      			echo 'Beim Abspeichern ist leider ein Fehler aufgetreten<br>';
      		}
      	} 
      }
      if($showFormular) {
      ?>
      <form action="?register=1" method="post">
      E-Mail:<br>
      <input type="email" size="40" maxlength="250" name="email"><br><br>
      Dein Passwort:<br>
      <input type="password" size="40"  maxlength="250" name="passwort"><br>
      Passwort wiederholen:<br>
      <input type="password" size="40" maxlength="250" name="passwort2"><br><br>
      <input type="submit" value="Abschicken">
      </form>
      <?php
      } //Ende von if($showFormular)
      ?>
      Alles anzeigen


      Habe den Fehler:

      Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at F:\xampp\htdocs\login.php:98) in F:\xampp\htdocs\login.php on line 99

      Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at F:\xampp\htdocs\register.php:100) in F:\xampp\htdocs\register.php on line 101

      Danke im Voraus!

      MFG 8)

    • plattkop
      Frischling
      Trophäen
      10
      Beiträge
      10
      • 3. August 2016 um 22:08
      • #2

      Ich sehe zwei Quellcodes, der eine hat 30 Zeilen, der andere 61. Die Fehler sind aber in Zeile 99 und 101, irgendwie kann da was nicht stimmen.

    • MILLER-CONTROLS
      Amateur
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      234
      Bilder
      9
      • 3. August 2016 um 22:16
      • #3

      Servus,

      ja das ist ein Ausschnitt. Der Fehler liegt bei Sessio_start{}

      Ganze Datei würde ich ungerne posten


      MFG

    • plattkop
      Frischling
      Trophäen
      10
      Beiträge
      10
      • 3. August 2016 um 22:19
      • #4
      Zitat von Christopher

      Servus,

      ja das ist ein Ausschnitt. Der Fehler liegt bei Sessio_start{}

      Ganze Datei würde ich ungerne posten


      MFG

      Hast du schon mal zuvor den Command session_start verwendet?
      Steht session_start am Anfang der Datei?

    • MILLER-CONTROLS
      Amateur
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      234
      Bilder
      9
      • 3. August 2016 um 22:27
      • #5

      Ne eben nicht, dachte das es im Header ist aber eben nicht o.o

    • plattkop
      Frischling
      Trophäen
      10
      Beiträge
      10
      • 3. August 2016 um 22:31
      • #6
      Zitat von Christopher

      Ne eben nicht, dachte das es im Header ist aber eben nicht o.o

      Schreib das session_start(); mal an den Anfang der Datei (direkt nach dem ersten PHP tag).

    • MILLER-CONTROLS
      Amateur
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      234
      Bilder
      9
      • 3. August 2016 um 22:35
      • #7

      Es ist beim ersten geschrieben :o

    • plattkop
      Frischling
      Trophäen
      10
      Beiträge
      10
      • 3. August 2016 um 22:38
      • #8
      Zitat von Christopher

      Es ist beim ersten geschrieben :o

      Sehr komisch, dann kann ich dir leider nicht weiterhelfen :/

    • MILLER-CONTROLS
      Amateur
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      234
      Bilder
      9
      • 3. August 2016 um 22:45
      • #9
      PHP: login.php
      <!DOCTYPE html>
      <html lang="de">
      
      <head>
            <meta charset="utf-8">
            <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
            <meta name="description" content="">
            <meta name="author" content="">
            <link rel="shortcut icon" href="favicon.ico">
            <title>Mazy - Grafik Designer</title>
            <!-- ALL STYLESHEETS -->
            <link href="css/all-stylesheet.css" rel="stylesheet">
            <!-- ALL COLORED STYLESHEETS -->
            <link rel="alternate stylesheet" type="text/css" href="css/colors/default.css" title="default">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/blue.css" title="blue">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/green.css" title="green">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/red.css" title="red">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/orange.css" title="orange">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/blue.css" title="blue">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/yellow.css" title="yellow">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/brown.css" title="brown">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/purple.css" title="purple">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/grey.css" title="grey">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/meroon.css" title="meroon">
            <!-- Just for debugging purposes. Don't actually copy this line! -->
            <!--[if lt IE 9]>
            <script src="../../assets/js/ie8-responsive-file-warning.js"></script>
            <![endif]-->
            <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
            <!--[if lt IE 9]>
            <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
            <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
            <![endif]-->
         </head>
         <body>
            <!-- PRELOADER STARTS
               ========================================================================= -->		
            <div id="preloader">
               <div class="preloader"><img src="img/progress.gif" alt=""></div>
            </div>
            <!-- PRELOADER ENDS
               ========================================================================= -->
            <!-- NAVIGATION STARTS
               ========================================================================= -->
             <section id="navigation">
               <div class="navbar navbar-inverse" role="navigation">
                  <div class="container">
                     <div class="navbar-header">
                        <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button>
                        <a class="navbar-brand" href="#slider"><img src="img/logo/logo.png" width="135" height="36" alt="" ></a> 
                     </div>
                     <div class="collapse navbar-collapse">
                        <ul class="nav navbar-nav pull-right">
                           <li><a href="index.html" class="external" data-toggle="collapse" data-target=".navbar-collapse">STARTSEITE</a></li>
                           <li>
                              <a href="#" class="dropdown-toggle" data-toggle="dropdown">ÜBER <i class="fa fa-caret-down"></i> </a>
                              <ul class="dropdown-menu" role="menu">
                                 <li><a role="menuitem" tabindex="-1" href="uber.html" class="external">WER BIN ICH</a></li>
                                 <li><a role="menuitem" tabindex="-1" href="service.html" class="external">SERVICE</a></li>
                              </ul>
                           </li>
                           <li><a href="portofolio.html" class="external" data-toggle="collapse" data-target=".navbar-collapse">PORTFOLIO</a></li>
                           <li>
                              <a href="blog.html" class="dropdown-toggle" data-toggle="dropdown">MEIN BLOG <i class="fa fa-caret-down"></i> </a>
                              <ul class="dropdown-menu" role="menu">
                                 <li><a role="menuitem" tabindex="-1" href="blog.html" class="external">BLOG - 2 </a></li>
                                 <li><a role="menuitem" tabindex="-1" href="single-blog-post-1.html" class="external">SINGLE POST - 1 </a></li>
                                 <li><a role="menuitem" tabindex="-1" href="single-blog-post-2.html" class="external">SINGLE POST - 2 </a></li>
                              </ul>
                           </li>
                           <li><a href="kontakt.html" class="external" data-toggle="collapse" data-target=".navbar-collapse">KONTAKT</a></li>
                           <li class="current"><a href="shop.html" class="external" data-toggle="collapse" data-target=".navbar-collapse">BESTELLEN</a></li>
      					 <li><a href="login.html" class="external" data-toggle="collapse" data-target=".navbar-collapse">LOGIN</a></li>
                        </ul>
                     </div>
                     <!--/.nav-collapse --> 
                  </div>
               </div>
            </section>
            <!-- /.NAVIGATION -->		
            <!-- BLOG SINGLE POST STARTS
               ========================================================================= -->
            <section id="blog-single-post">
               <div class="blog-single-post-heading" data-speed="20" data-type="background">
                  <div class="container">
                     <div class="row">
                        <div class="col-md-12 section-heading animated" data-animation="fadeInUp" data-animation-delay="0">
                           <h2><span class="colored-text"> JETZT</span> REGISTRIEREN</h2>
                           <h1>ODER EINFACH <span class="colored-text"> EINLOGGEN</span></h1>
      					 <h2><span class="colored-text"> UM PER 1-CLICK</span> ZU BESTELLEN</h2>
                        </div>
                     </div>
                  </div>
               </div>
              <br><br>
      		<hr>
      
      		<?php 
      session_start();
      $pdo = new PDO('mysql:host=localhost;dbname=mazy', 'root', 'alleskleber');
       
      if(isset($_GET['login'])) {
      	$email = $_POST['email'];
      	$passwort = $_POST['passwort'];
      
      	$statement = $pdo->prepare("SELECT * FROM users WHERE email = :email");
      	$result = $statement->execute(array('email' => $email));
      	$user = $statement->fetch();
      
      	//Überprüfung des Passworts
      	if ($user !== false && password_verify($passwort, $user['passwort'])) {
      		$_SESSION['userid'] = $user['id'];
      		die('Login erfolgreich. Weiter zu <a href="geheim.php">internen Bereich</a>');
      	} else {
      		$errorMessage = "E-Mail oder Passwort war ungültig<br>";
      	}
      
      }
      ?>
      
      
      
        <?php 
      if(isset($errorMessage)) {
      	echo $errorMessage;
      }
      ?>
       
      <form action="?login=1" method="post">
      E-Mail:<br>
      <input type="email" size="40" maxlength="250" name="email"><br><br>
       
      Dein Passwort:<br>
      <input type="password" size="40"  maxlength="250" name="passwort"><br>
       
      <input type="submit" value="Abschicken">
      </form> 
      
      
      
      
      
      
      
      <!--
            <form action="index.html" method="post">
      
              <h1><font color=#e81e25>EINLOGGEN</font></h1>
      
              <fieldset>
                <label for="name">Email:</label>
                <input type="text" id="name" name="user_name">
      
                <label for="password">Passwort:</label>
                <input type="password" id="password" name="user_password">
                  </fieldset>
               <button type="submit">Einloggen</button><br>
      		   <center><a href="register.html"><font color=#e81e25>Noch nicht registriert?</font></a><br></center>
            </form>
      
      
      
      
      
      
         
      
      
      
      
      		
      		-->
      
      		<hr>
      
            <!-- FOOTER STARTS
               ========================================================================= -->
            <section id="footer">
               <div class="container">
                  <div class="row">
                     <div class="col-lg-6 col-lg-offset-3">
                        <div class="desc"><i class="fa fa-heart"></i><br>© 2016. Mazydesigns.<br> Alle Rechte vorbehalten</div>
                        <div class="line"></div>
                        <a href="#" class="scrollup"><i class="fa fa-angle-double-up"></i></a>
                     </div>
                  </div>
               </div>
            </section>
            <!-- /.FOOTER -->
            <!-- /.CONTAINER -->
            <!-- STYLE SWITCHER PANEL STARTS
               ========================================================================= -->
      
      
      
      
            <!-- JAVASCRIPTS STARTS
               ========================================================================= --> 
            <!-- Bootstrap --> 
            <script src="js/jquery-1.11.0.min.js"></script> 
            <script src="js/bootstrap.min.js"></script> 
            <!-- Style Switcher -->
            <script src="js/styleswitcher/styleswitcher.js" type="text/javascript"></script>
            <!-- Animation --> 
            <script type="text/javascript" src="js/animation/jquery.appear.js"></script>        
            <!-- AJAX Contact Form -->  		
            <script type="text/javascript" src="js/contact/contact-form.js"></script>
            <!-- Lightbox --> 
            <script src="lightbox/ekko-lightbox.js"></script>       
            <!-- Isotope -->     
            <script src="js/isotope/jquery.isotope.min.js"></script>
            <script src="js/isotope/custom-isotope.js"></script>      
            <!-- Owl Carousel --> 
            <script src="owl-carousel/owl-carousel/owl.carousel.js"></script> 
            <!-- Custom -->
            <script src="js/custom.js"></script> 
            <!-- Parallex -->
            <script src="js/parallex/script.js"></script> 
            <!-- ScrollTo -->
            <script src="js/nav/jquery.scrollTo.js"></script> 
            <script src="js/nav/jquery.nav.js"></script> 
            <!-- Sticky -->
            <script type="text/javascript" src="js/sticky/jquery.sticky.js"></script> 
            <!-- SmoothScroll --> 
              <script type="text/javascript" src="js/SmoothScroll/SmoothScroll.js"></script>
            <!-- Retina --> 
              <script type="text/javascript" src="js/retina/retina.js"></script>
              <!-- FitVids -->
              <script type="text/javascript" src="js/jquery.fitvids.js"></script>     
         </body>
      
      
      
      
      </html>
      Alles anzeigen
      PHP: register.php
      <!DOCTYPE html>
      <html lang="de">
      
      <head>
            <meta charset="utf-8">
            <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
            <meta name="description" content="">
            <meta name="author" content="">
            <link rel="shortcut icon" href="favicon.ico">
            <title>Mazy - Grafik Designer</title>
            <!-- ALL STYLESHEETS -->
            <link href="css/all-stylesheet.css" rel="stylesheet">
            <!-- ALL COLORED STYLESHEETS -->
            <link rel="alternate stylesheet" type="text/css" href="css/colors/default.css" title="default">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/blue.css" title="blue">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/green.css" title="green">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/red.css" title="red">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/orange.css" title="orange">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/blue.css" title="blue">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/yellow.css" title="yellow">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/brown.css" title="brown">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/purple.css" title="purple">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/grey.css" title="grey">
            <link rel="alternate stylesheet" type="text/css" href="css/colors/meroon.css" title="meroon">
            <!-- Just for debugging purposes. Don't actually copy this line! -->
            <!--[if lt IE 9]>
            <script src="../../assets/js/ie8-responsive-file-warning.js"></script>
            <![endif]-->
            <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
            <!--[if lt IE 9]>
            <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
            <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
            <![endif]-->
      
      
      
      
         </head>
         <body>
            <!-- PRELOADER STARTS
               ========================================================================= -->		
            <div id="preloader">
               <div class="preloader"><img src="img/progress.gif" alt=""></div>
            </div>
            <!-- PRELOADER ENDS
               ========================================================================= -->
            <!-- NAVIGATION STARTS
               ========================================================================= -->
             <section id="navigation">
               <div class="navbar navbar-inverse" role="navigation">
                  <div class="container">
                     <div class="navbar-header">
                        <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button>
                        <a class="navbar-brand" href="#slider"><img src="img/logo/logo.png" width="135" height="36" alt="" ></a> 
                     </div>
                     <div class="collapse navbar-collapse">
                        <ul class="nav navbar-nav pull-right">
                           <li><a href="index.html" class="external" data-toggle="collapse" data-target=".navbar-collapse">STARTSEITE</a></li>
                           <li>
                              <a href="#" class="dropdown-toggle" data-toggle="dropdown">ÜBER <i class="fa fa-caret-down"></i> </a>
                              <ul class="dropdown-menu" role="menu">
                                 <li><a role="menuitem" tabindex="-1" href="uber.html" class="external">WER BIN ICH</a></li>
                                 <li><a role="menuitem" tabindex="-1" href="service.html" class="external">SERVICE</a></li>
                              </ul>
                           </li>
                           <li><a href="portofolio.html" class="external" data-toggle="collapse" data-target=".navbar-collapse">PORTFOLIO</a></li>
                           <li>
                              <a href="blog.html" class="dropdown-toggle" data-toggle="dropdown">MEIN BLOG <i class="fa fa-caret-down"></i> </a>
                              <ul class="dropdown-menu" role="menu">
                                 <li><a role="menuitem" tabindex="-1" href="blog.html" class="external">BLOG - 2 </a></li>
                                 <li><a role="menuitem" tabindex="-1" href="single-blog-post-1.html" class="external">SINGLE POST - 1 </a></li>
                                 <li><a role="menuitem" tabindex="-1" href="single-blog-post-2.html" class="external">SINGLE POST - 2 </a></li>
                              </ul>
                           </li>
                           <li><a href="kontakt.html" class="external" data-toggle="collapse" data-target=".navbar-collapse">KONTAKT</a></li>
                           <li class="current"><a href="shop.html" class="external" data-toggle="collapse" data-target=".navbar-collapse">BESTELLEN</a></li>
      					 <li><a href="login.html" class="external" data-toggle="collapse" data-target=".navbar-collapse">LOGIN</a></li>
                        </ul>
                     </div>
                     <!--/.nav-collapse --> 
                  </div>
               </div>
            </section>
            <!-- /.NAVIGATION -->		
            <!-- BLOG SINGLE POST STARTS
               ========================================================================= -->
            <section id="blog-single-post">
               <div class="blog-single-post-heading" data-speed="20" data-type="background">
                  <div class="container">
                     <div class="row">
                        <div class="col-md-12 section-heading animated" data-animation="fadeInUp" data-animation-delay="0">
                           <h2><span class="colored-text"> JETZT</span> REGISTRIEREN</h2>
                           <h1>ODER EINFACH <span class="colored-text"> EINLOGGEN</span></h1>
      					 <h2><span class="colored-text"> UM PER 1-CLICK</span> ZU BESTELLEN</h2>
                        </div>
                     </div>
                  </div>
               </div>
              <br><br>
      		<hr>
      
      
      
      
      
      
      
      
      
        <?php
      $showFormular = true; //Variable ob das Registrierungsformular anezeigt werden soll
       
      if(isset($_GET['register'])) {
      	$error = false;
      	$email = $_POST['email'];
      	$passwort = $_POST['passwort'];
      	$passwort2 = $_POST['passwort2'];
      
      	if(!filter_var($email, FILTER_VALIDATE_EMAIL)) {
      		echo 'Bitte eine gültige E-Mail-Adresse eingeben<br>';
      		$error = true;
      	} 	
      	if(strlen($passwort) == 0) {
      		echo 'Bitte ein Passwort angeben<br>';
      		$error = true;
      	}
      	if($passwort != $passwort2) {
      		echo 'Die Passwörter müssen übereinstimmen<br>';
      		$error = true;
      	}
      
      	//Überprüfe, dass die E-Mail-Adresse noch nicht registriert wurde
      	if(!$error) { 
      		$statement = $pdo->prepare("SELECT * FROM users WHERE email = :email");
      		$result = $statement->execute(array('email' => $email));
      		$user = $statement->fetch();
      
      		if($user !== false) {
      			echo 'Diese E-Mail-Adresse ist bereits vergeben<br>';
      			$error = true;
      		}	
      	}
      
      	//Keine Fehler, wir können den Nutzer registrieren
      	if(!$error) {	
      		$passwort_hash = password_hash($passwort, PASSWORD_DEFAULT);
      
      		$statement = $pdo->prepare("INSERT INTO users (email, passwort) VALUES (:email, :passwort)");
      		$result = $statement->execute(array('email' => $email, 'passwort' => $passwort_hash));
      
      		if($result) {		
      			echo 'Du wurdest erfolgreich registriert. <a href="login.php">Zum Login</a>';
      			$showFormular = false;
      		} else {
      			echo 'Beim Abspeichern ist leider ein Fehler aufgetreten<br>';
      		}
      	} 
      }
       
      if($showFormular) {
      ?>
       
      <form action="?register=1" method="post">
      E-Mail:<br>
      <input type="email" size="40" maxlength="250" name="email"><br><br>
       
      Dein Passwort:<br>
      <input type="password" size="40"  maxlength="250" name="passwort"><br>
       
      Passwort wiederholen:<br>
      <input type="password" size="40" maxlength="250" name="passwort2"><br><br>
       
      <input type="submit" value="Abschicken">
      </form>
       
      <?php
      } //Ende von if($showFormular)
      ?>
       
      
      
        <!--
            <form action="index.html" method="post">
      
              <h1><font color=#e81e25>REGISTRIEREN</font></h1>
      
              <fieldset>                   
                <label for="email">Email:</label>
                <input type="email" id="email" name="email">
      
      		  <label for="passwort">Passwort:</label>
                <input type="password" id="passwort" name="passwort">
      
      		  <label for="passwort2">Passwort wiederholen:</label>
                <input type="password" id="passwort2" name="passwort2">
      
               <button type="submit">Einloggen</button><br>
      		   <center><a href="login.html"><font color=#e81e25>Schon registriert? Hier einloggen!</font></a><br></center>
            </form>
      
      
      
      
      
      
         -->
      
      
      
      
      		
      
      
      		<hr>
      
            <!-- FOOTER STARTS
               ========================================================================= -->
            <section id="footer">
               <div class="container">
                  <div class="row">
                     <div class="col-lg-6 col-lg-offset-3">
                        <div class="desc"><i class="fa fa-heart"></i><br>© 2016. Mazydesigns.<br> Alle Rechte vorbehalten</div>
                        <div class="line"></div>
                        <a href="#" class="scrollup"><i class="fa fa-angle-double-up"></i></a>
                     </div>
                  </div>
               </div>
            </section>
            <!-- /.FOOTER -->
            <!-- /.CONTAINER -->
            <!-- STYLE SWITCHER PANEL STARTS
               ========================================================================= -->
      
      
      
      
            <!-- JAVASCRIPTS STARTS
               ========================================================================= --> 
            <!-- Bootstrap --> 
            <script src="js/jquery-1.11.0.min.js"></script> 
            <script src="js/bootstrap.min.js"></script> 
            <!-- Style Switcher -->
            <script src="js/styleswitcher/styleswitcher.js" type="text/javascript"></script>
            <!-- Animation --> 
            <script type="text/javascript" src="js/animation/jquery.appear.js"></script>        
            <!-- AJAX Contact Form -->  		
            <script type="text/javascript" src="js/contact/contact-form.js"></script>
            <!-- Lightbox --> 
            <script src="lightbox/ekko-lightbox.js"></script>       
            <!-- Isotope -->     
            <script src="js/isotope/jquery.isotope.min.js"></script>
            <script src="js/isotope/custom-isotope.js"></script>      
            <!-- Owl Carousel --> 
            <script src="owl-carousel/owl-carousel/owl.carousel.js"></script> 
            <!-- Custom -->
            <script src="js/custom.js"></script> 
            <!-- Parallex -->
            <script src="js/parallex/script.js"></script> 
            <!-- ScrollTo -->
            <script src="js/nav/jquery.scrollTo.js"></script> 
            <script src="js/nav/jquery.nav.js"></script> 
            <!-- Sticky -->
            <script type="text/javascript" src="js/sticky/jquery.sticky.js"></script> 
            <!-- SmoothScroll --> 
              <script type="text/javascript" src="js/SmoothScroll/SmoothScroll.js"></script>
            <!-- Retina --> 
              <script type="text/javascript" src="js/retina/retina.js"></script>
              <!-- FitVids -->
              <script type="text/javascript" src="js/jquery.fitvids.js"></script>     
         </body>
      
      
      
      
      </html>
      Alles anzeigen
    • Multivitamin
      aka Saft
      Reaktionen
      201
      Trophäen
      11
      Beiträge
      352
      • 3. August 2016 um 23:20
      • #10

      der fehler von wegen "headers already sent" kommt davon dass du versuchst Cookies oder ähnliches zu setzen nachdem du bereits den header gesendet/gesetzt hast

      hier in deinem Script ist alles in Ordnung, kann es sein dass das Script durch eine andere Datei included wird und in dieser Datei die Headers modifiziert werden?

    • MILLER-CONTROLS
      Amateur
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      234
      Bilder
      9
      • 3. August 2016 um 23:36
      • #11

      Jap,

      die Geheim.php also die Seite nach dem man eingeloggt ist wird eingebunden:

      <?php
      session_start();
      if(!isset($_SESSION['userid'])) {
      die('Bitte zuerst <a href="login.php">einloggen</a>');
      }
      //Abfrage der Nutzer ID vom Login
      $userid = $_SESSION['userid'];
      echo "Hallo User: ".$userid;
      ?>

    • Multivitamin
      aka Saft
      Reaktionen
      201
      Trophäen
      11
      Beiträge
      352
      • 3. August 2016 um 23:45
      • #12

      versuch mal dein session_start() direkt zu beginn des Scripts aufzurufen

    • MILLER-CONTROLS
      Amateur
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      234
      Bilder
      9
      • 3. August 2016 um 23:54
      • #13

      Hat geklappt!
      Kann mich zwar nicht richtig einloggen, aber das ist erstmal egal, jetzt ist die Frage
      Habe in der Datenbank:
      ID
      EMAIL
      PASSWORT
      VORNAME
      NACHNAME

      ID, Email, Passwort werden eingetragen, wie kann ich Vorname und Nachname noch eintragen? Muss ich ne neue Variable setzten und die dann neu im Formular setzten oder?

    • Multivitamin
      aka Saft
      Reaktionen
      201
      Trophäen
      11
      Beiträge
      352
      • 4. August 2016 um 00:00
      • #14

      INSERT INTO <database_name> (EMAIL, PASSWORT, VORNAME, NACHNAME) VALUES ("[email protected]", "someHashedPassword", "John", "Doe")

    • MILLER-CONTROLS
      Amateur
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      234
      Bilder
      9
      • 4. August 2016 um 00:02
      • #15

      Ich meine das mit dem Register System, habe es aber glaube ich geschafft, melde mich und poste den Code hier!

    • MILLER-CONTROLS
      Amateur
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      234
      Bilder
      9
      • 4. August 2016 um 00:55
      • #16

      Bei der
      Login.php kommt jetzt der Fehler

      prepare("SELECT * FROM users WHERE email = :email"); $result = $statement->execute(array('email' => $email)); $user = $statement->fetch(); //Überprüfung des Passworts if ($user !== false && password_verify($passwort, $user['passwort'])) { $_SESSION['userid'] = $user['id']; die('Login erfolgreich. Weiter zu internen Bereich'); } else { $errorMessage = "E-Mail oder Passwort war ungültig
      "; } } ?>

      Bei der register.php

      '; $error = true; } if(strlen($passwort) == 0) { echo 'Bitte ein Passwort angeben
      '; $error = true; } if($passwort != $passwort2) { echo 'Die Passwörter müssen übereinstimmen
      '; $error = true; } if(strlen($vorname) == 0) { echo 'Bitte deinen Vornamen angeben
      '; $error = true; } if(strlen($nachname) == 0) { echo 'Bitte deinen Nachnamen angeben
      '; $error = true; } //Überprüfe, dass die E-Mail-Adresse noch nicht registriert wurde if(!$error) { $statement = $pdo->prepare("SELECT * FROM users WHERE email = :email"); $result = $statement->execute(array('email' => $email)); $user = $statement->fetch(); if($user !== false) { echo 'Diese E-Mail-Adresse ist bereits vergeben
      '; $error = true; } } //Keine Fehler, wir können den Nutzer registrieren if(!$error) { $passwort_hash = password_hash($passwort, PASSWORD_DEFAULT); $statement = $pdo->prepare("INSERT INTO users (email, passwort, vorname, nachname) VALUES (:email, :passwort, :vorname, :nachname,)"); $result = $statement->execute(array('email' => $email, 'passwort' => $passwort_hash, 'vorname' => $vorname, 'nachname' => $nachname)); if($result) { echo 'Du wurdest erfolgreich registriert. Zum Login'; $showFormular = false; } else { echo 'Beim Abspeichern ist leider ein Fehler aufgetreten
      '; } } } if($showFormular) { ?>

    • MILLER-CONTROLS
      Amateur
      Reaktionen
      66
      Trophäen
      10
      Beiträge
      234
      Bilder
      9
      • 4. August 2016 um 00:58
      • #17

      Habe ich geändert:

      Code
      if(isset($_GET['register'])) {
      $error = false;
      $email = $_POST['email'];
      $passwort = $_POST['passwort'];
      $passwort2 = $_POST['passwort2'];
      $vorname = $_POST['vorname'];
      $nachname = $_POST['nachname'];
      
      
      
      
       if(!filter_var($email, FILTER_VALIDATE_EMAIL)) {
      echo 'Bitte eine gültige E-Mail-Adresse eingeben<br>';
      $error = true;
      }
      if(strlen($passwort) == 0) {
      echo 'Bitte ein Passwort angeben<br>';
      $error = true;
      }
      if($passwort != $passwort2) {
      echo 'Die Passwörter müssen übereinstimmen<br>';
      $error = true;
      }
      if(strlen($vorname) == 0) {
      echo 'Bitte deinen Vornamen angeben<br>';
      $error = true;
      }
      
      
      
      
      if(strlen($nachname) == 0) {
      echo 'Bitte deinen Nachnamen angeben<br>';
      $error = true;
      }
      
      
      
      
      E-Mail:<br>
      <input type="email" size="40" maxlength="250" name="email"><br><br>
      Dein Passwort:<br>
      <input type="password" size="40"  maxlength="250" name="passwort"><br>
      Passwort wiederholen:<br>
      <input type="password" size="40" maxlength="250" name="passwort2"><br><br>
      
      
      
      
      Vorname:<br>
      <input type="vorname" size="40" maxlength="250" name="vorname"><br><br>
      
      
      
      
      Nachname:<br>
      <input type="nachname" size="40" maxlength="250" name="nachname"><br><br>
      <button type="submit">Registrieren</button><br>
        <center><a href="login.php"><font color=#e81e25>Schon Kunde? Hier einloggen!</font></a><br></center>
      </form>
      Alles anzeigen
    • Heinzelmaennchen
      Anfänger
      Reaktionen
      10
      Trophäen
      9
      Beiträge
      65
      • 18. Dezember 2016 um 18:10
      • #18

      "Headers already sent" meint, dass dein PHP Script direkt die HTTP Headers sendet, und im nachhinein diese nicht mehr geändert werden können.
      Versuch, das du nicht alles direkt am Anfang sendest, bevor bevor du den Befehl session_start ausführst.

    • nox 11. Mai 2025 um 17:52

      Hat das Thema aus dem Forum PHP nach HTML, CSS, PHP, JS verschoben.

    Registrieren oder Einloggen

    Du bist noch kein Mitglied von NodeZone.net? Registriere dich kostenlos und werde Teil einer großartigen Community!

    Registrieren

    Ähnliche Themen

    • [Tutorial] Altis Life 4.4r4 ADAC (OPFOR) einfügen

      • amdgeode
      • 17. Januar 2017 um 01:47
      • Tutorials & Releases
    • Polizei, Medic usw. | Web-basiertes Fraktionssystem

      • Martin
      • 8. März 2017 um 19:04
      • Tools & Softwareentwicklung
    • Domain mit Website und Teamspeak Koppeln

      • Vito Scaletta
      • 12. August 2017 um 00:39
      • Linux-Server
    • PHP Tag

      • SorryForOwned
      • 3. Juni 2017 um 16:49
      • HTML, CSS, PHP, JS
    • Frage zu include und Variablen

      • McArthur
      • 23. Februar 2017 um 23:18
      • HTML, CSS, PHP, JS
    • Register Echo Weiterleitung

      • MILLER CONTROLS
      • 22. Februar 2017 um 18:47
      • HTML, CSS, PHP, JS

    Wichtige Links & Informationen

    Server & Hosting-Ressourcen

      Server Administration & Hosting Basics

      Windows Server Support & Guides

      Linux Server Configuration & Help

      Setting up TeamSpeak 3 & VoIP Servers

      Domains & Web Hosting for Beginners & Professionals

      Cloud Hosting, Docker & Kubernetes Tutorials

    Gameserver & Modding-Ressourcen

      ArmA 3 Tutorials & Script Collection

      Renting & Operating Gameservers

      DayZ Server Management & Help

      FiveM (GTA V) Server & Script Development

      Rust Server Modding & Administration

      Setting up & Optimizing ARK Survival Servers

    NodeZone.net – Deine Community für Gameserver, Server-Hosting & Modding

      NodeZone.net ist dein Forum für Gameserver-Hosting, Rootserver, vServer, Webhosting und Modding. Seit 2015 bietet unsere Community eine zentrale Anlaufstelle für Server-Admins, Gamer und Technikbegeisterte, die sich über Server-Management, Hosting-Lösungen und Spielemodding austauschen möchten.


      Ob Anleitungen für eigene Gameserver, Hilfe bei Root- und vServer-Konfigurationen oder Tipps zu Modding & Scripting – bei uns findest du fundiertes Wissen und praxisnahe Tutorials. Mit einer stetig wachsenden Community findest du hier Antworten auf deine Fragen, Projektpartner und Gleichgesinnte für deine Gaming- und Serverprojekte. Schließe dich NodeZone.net an und werde Teil einer aktiven Community rund um Server-Hosting, Gameserver-Management und Modding-Ressourcen.

    Wer jetzt nicht teilt ist selber Schuld:
    1. Nutzungsbestimmungen
    2. Datenschutzerklärung
    3. Impressum
    4. Urheberrechts- oder Lizenzverstoß melden
  • Trimax Design coded & layout by Gino Zantarelli 2023-2025©
    Community-Software: WoltLab Suite™