kostenloser Webspace werbefrei: lima-city


user email (ID) ausgeben wenn user eingeloggt

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    schau-dich-shlau

    schau-dich-shlau hat kostenlosen Webspace.

    Hallo,

    Ich möchte gern folgendes tag/ausgeben">ausgeben für einen eingeloggten user:

    Emali

    Nutzernme

    Wie mach ich das.:confused:

    Kennt ihr code.:confused::tongue:
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. h***e

    schau-dich-shlau schrieb:
    Hallo,

    Ich möchte gern folgendes ausgeben für einen eingeloggten user:

    Emali

    Nutzernme

    Wie mach ich das.:confused:

    Kennt ihr code.:confused::tongue:

    Ohne dein Loginsystem zu kennen kann dir niemand Helfen.
    Benutzt du eine Datenbank?
    Wenn ja Poste den Namen der Tabelle und die Namen der Spalten.

    Beitrag zuletzt geändert: 5.8.2013 0:14:11 von hpage
  4. schau-dich-shlau schrieb:
    Hallo,

    Ich möchte gern folgendes ausgeben für einen eingeloggten user:

    Emali

    Nutzernme

    Wo und unter welchen Bedingungen soll die Ausgabe dieser Daten stattfinden? Woher kommen Nutzername und Emailadresse und wie stehen sie zur weiteren Verarbeitung zur Verfügung?


    hpage schrieb:
    Wenn ja Poste den Namen der Tabelle und die Namen der Spalten.

    Mit ein wenig Abstraktionsvermögen kann man diese Dinge auch durch verständliche Pseudowerte ersetzen, die der Fragesteller dann entsprechend ersetzt. :wink: wirklich notwendig sind diese Infos nicht.
  5. Autor dieses Themas

    schau-dich-shlau

    schau-dich-shlau hat kostenlosen Webspace.

    Hallo,

    Ich möchte das gerne Profilseite ausgeben (E-mail Benutzername).


    CREATE TABLE IF NOT EXISTS `nutzer` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `nutzername` varchar(32) NOT NULL DEFAULT 'not',
    `email` varchar(100) NOT NULL DEFAULT 'not',
    `tag` varchar(20) NOT NULL,
    `monat` varchar(20) NOT NULL,
    `jahr` varchar(20) NOT NULL,
    `passwort` varchar(40) NOT NULL DEFAULT 'not',
    `anmeldedatum` datetime DEFAULT NULL,
    `aktivierungscode` int(6) NOT NULL DEFAULT '123',
    `aktiviert` int(11) NOT NULL DEFAULT '1',
    `vergessen` int(6) NOT NULL DEFAULT '0',
    `avatar` varchar(55) NOT NULL DEFAULT 'standart',
    PRIMARY KEY (`id`)
    ) ;


    <?php
    		$seitentitel = 'Login';
    		require_once('includes/zugang.php');
      
    		$fehlermldg = "";
      
    		if (!isset($_SESSION['id'])) {
    			if (isset($_POST['submit'])) {
    
    				$db = mysqli_connect(DB_HOST, DB_BENUTZER, DB_PASSWORT, DB_NAME);
    					mysqli_set_charset($db, "utf8");
          
    				$nutzername = mysqli_real_escape_string($db, trim($_POST['nutzername']));
    				$passwort = mysqli_real_escape_string($db, trim($_POST['passwort']));
    
    				if (!empty($nutzername) && !empty($passwort)) {
    
    					$sql = "SELECT id, nutzername FROM nutzer WHERE nutzername = '$nutzername' AND passwort = SHA('$passwort')";
    					$daten = mysqli_query($db, $sql);
    					$zeile = mysqli_fetch_array($daten);
    
    					if (mysqli_num_rows($daten) == 1) {
    					
    						// Login erfolgreich, also die Cookies setzen und den Benutzer zur Hauptseite umleiten
    						$_SESSION['id'] = $zeile['id'];
    						$_SESSION['nutzername'] = $zeile['nutzername'];
    						setcookie('id', $zeile['id'], time() + (60 * 60 * 24 * 30));    // Verfällt in 30 Tagen
    						setcookie('nutzername', $zeile['nutzername'], time() + (60 * 60 * 24 * 30));  // Verfällt in 30 Tagen
    						$hauptseite = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/seite2.php';
    							header('Location: ' . $hauptseite);
    							
    						mysqli_close($db);
    					}
    					else {
    						$fehlermldg = 'Sie m&uuml;ssen g&uuml;ltige Zugangsdaten eingeben, um sich einzuloggen.';
    					}
    				}
    				else {
    					$fehlermldg = 'Sie m&uuml;ssen Ihre Zugangsdaten eingeben, um sich einzuloggen.';
    				}
    			}
    		}
    	?>
    	<div id="wrapper">
    	
    		<?php
    			require_once('includes/header.php');  
    				if($fehlermldg != "") {
    					echo '<p class="fail">' . $fehlermldg . '</p>';
    				}
    		?>
    		<h2>Login</h2>
    		<form method="post" action="login.php">
    		
    			<label for="nutzername">Benutzername:</label>
    			
    			<input type="text" name="nutzername" />
    		
    			<label for="passwort">Passwort:</label>
    			<input type="password" name="passwort" />
    		
    			<input type="submit" value="Login" name="submit" />
    		
    		</form>
    	</div><!-- #wrapper -->
  6. es geht ab zeile 18 (dein kode in der letzten posting) so weiter:
    $sql = <<< EOT
    SELECT id, nutzername, email
      FROM nutzer
      WHERE nutzername = '$nutzername' AND passwort = SHA($passwort)
    EOT;
    					$daten = mysqli_query($db, $sql);
    					$zeile = mysqli_fetch_array($daten);
    
    					if (mysqli_num_rows($daten) == 1) {
    					  
    						// Login erfolgreich, also die Cookies setzen und den Benutzer zur Hauptseite umleiten
    						$zeile = mysqli_fetch_array($daten);
    						$_SESSION['id'] = $zeile['id'];
    						$_SESSION['nutzername'] = $zeile['nutzername'];
    						$_SESSION['email'] = $zeile['email'];
    						setcookie('id', $zeile['id'], time() + (60 * 60 * 24 * 30));    // Verfällt in 30 Tagen
    						setcookie('nutzername', $zeile['nutzername'], time() + (60 * 60 * 24 * 30));  // Verfällt in 30 Tagen
    						$hauptseite = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/seite2.php';
    							header('Location: ' . $hauptseite);
    							
    						mysqli_close($db);
    					}
    dann hast du 'nutzername' und 'email' un der $_SESSION, wo du sie dann überall zur verfügung hast.

    allerdingd dein create ist ein einziger graus! ich würde das tun:
    CREATE TABLE IF NOT EXISTS `nutzer` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `nutzername` varchar(32) NOT NULL DEFAULT '',
      `email` varchar(100) NOT NULL DEFAULT '',
      `tag` varchar(20) NOT NULL,
      `monat` varchar(20) NOT NULL,
      `jahr` varchar(20) NOT NULL,
      `passwort` varchar(40) NOT NULL DEFAULT '',
      `anmeldedatum` datetime DEFAULT NULL,
      `aktivierungscode` int(6) NOT NULL DEFAULT '0',
      `aktiviert` int(11) NOT NULL DEFAULT '1',
      `vergessen` int(6) NOT NULL DEFAULT '0',
      `avatar` varchar(55) NOT NULL DEFAULT <avatarID>,
      PRIMARY KEY (`id`)
    )
    wobei '<avatarID>' natürlich richtig sein sollte.
  7. Autor dieses Themas

    schau-dich-shlau

    schau-dich-shlau hat kostenlosen Webspace.

    Hallo,
    Danke aber es geht nicht oder habe ich das falsch eingefügt.:confused:

    Die Fehlermeldung kommt.:scared:
    Parse error: syntax error, unexpected 'else' (T_ELSE) in E:\xampp\htdocs\spiele\login\login.php on line 39

    <?php
    		$seitentitel = 'Login';
    		require_once('includes/zugang.php');
      
    		$fehlermldg = "";
      
    		if (!isset($_SESSION['id'])) {
    			if (isset($_POST['submit'])) {
    
    				$db = mysqli_connect(DB_HOST, DB_BENUTZER, DB_PASSWORT, DB_NAME);
    					mysqli_set_charset($db, "utf8");
          
    				$nutzername = mysqli_real_escape_string($db, trim($_POST['nutzername']));
    				$passwort = mysqli_real_escape_string($db, trim($_POST['passwort']));
    
    				if (!empty($nutzername) && !empty($passwort)) {
    
    					$sql = <<< EOT
    				SELECT id, nutzername, email
    				FROM nutzer
    				WHERE nutzername = '$nutzername' AND passwort = SHA($passwort)
    EOT;
                        $daten = mysqli_query($db, $sql);
                        $zeile = mysqli_fetch_array($daten);
     
                        if (mysqli_num_rows($daten) == 1) {
                           
                            // Login erfolgreich, also die Cookies setzen und den Benutzer zur Hauptseite umleiten
                            $zeile = mysqli_fetch_array($daten);
                            $_SESSION['id'] = $zeile['id'];
                            $_SESSION['nutzername'] = $zeile['nutzername'];
                            $_SESSION['email'] = $zeile['email'];
                            setcookie('id', $zeile['id'], time() + (60 * 60 * 24 * 30));    // Verfällt in 30 Tagen
                            setcookie('nutzername', $zeile['nutzername'], time() + (60 * 60 * 24 * 30));  // Verfällt in 30 Tagen
                            $hauptseite = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/seite2.php';
                                header('Location: ' . $hauptseite);
                                 
                            mysqli_close($db);
    					else {
    						$fehlermldg = 'Sie m&uuml;ssen g&uuml;ltige Zugangsdaten eingeben, um sich einzuloggen.';
    					}
    				}
    				else {
    					$fehlermldg = 'Sie m&uuml;ssen Ihre Zugangsdaten eingeben, um sich einzuloggen.';
    				}
    			}
    		}
    	?>
    	<div id="wrapper">
    	
    		<?php
    			require_once('includes/header.php');  
    				if($fehlermldg != "") {
    					echo '<p class="fail">' . $fehlermldg . '</p>';
    				}
    		?>
    		<h2>Login</h2>
    		<form method="post" action="login.php">
    		
    			<label for="nutzername">Benutzername:</label>
    			
    			<input type="text" name="nutzername" />
    		
    			<label for="passwort">Passwort:</label>
    			<input type="password" name="passwort" />
    		
    			<input type="submit" value="Login" name="submit" />
    		
    		</form>
    	</div><!-- #wrapper -->
  8. also dann der ganze code (von dir, von oben + meine einfügung):
    <?php
    		$seitentitel = 'Login';
    		require_once('includes/zugang.php');
    
    		$fehlermldg = "";
    
    		if (!isset($_SESSION['id'])) {
    			if (isset($_POST['submit'])) {
    
    				$db = mysqli_connect(DB_HOST, DB_BENUTZER, DB_PASSWORT, DB_NAME);
    					mysqli_set_charset($db, "utf8");
    
    				$nutzername = mysqli_real_escape_string($db, trim($_POST['nutzername']));
    				$passwort = mysqli_real_escape_string($db, trim($_POST['passwort']));
    
    				if (!empty($nutzername) && !empty($passwort)) {
    
    					$sql = <<< EOT
    SELECT id, nutzername, email
      FROM nutzer
      WHERE nutzername = '$nutzername' AND passwort = SHA($passwort)
    EOT;
    					$daten = mysqli_query($db, $sql);
    
    					if (mysqli_num_rows($daten) == 1) {
    
    					  // Login erfolgreich, also die Cookies setzen und den Benutzer zur Hauptseite umleiten
    					  $zeile = mysqli_fetch_array($daten);
    					  $_SESSION['id'] = $zeile['id'];
    					  $_SESSION['nutzername'] = $zeile['nutzername'];
    					  $_SESSION['email'] = $zeile['email'];
    					  setcookie('id', $zeile['id'], time() + (60 * 60 * 24 * 30));    // Verfällt in 30 Tagen
    					  setcookie('nutzername', $zeile['nutzername'], time() + (60 * 60 * 24 * 30));  // Verfällt in 30 Tagen
    					  $hauptseite = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/seite2.php';
    					  mysqli_close($db);
    					  header('Location: ' . $hauptseite);
    					  exit();
    					} else {
    						$fehlermldg = 'Sie m&uuml;ssen g&uuml;ltige Zugangsdaten eingeben, um sich einzuloggen.';
    					}
    				} else {
    					$fehlermldg = 'Sie m&uuml;ssen Ihre Zugangsdaten eingeben, um sich einzuloggen.';
    				}
    			}
    		}
    	?>
    	<div id="wrapper">
    
    		<?php
    			require_once('includes/header.php');
    				if($fehlermldg != "") {
    					echo '<p class="fail">' . $fehlermldg . '</p>';
    				}
    		?>
    		<h2>Login</h2>
    		<form method="post" action="login.php">
    
    			<label for="nutzername">Benutzername:</label>
    
    			<input type="text" name="nutzername" />
    
    			<label for="passwort">Passwort:</label>
    			<input type="password" name="passwort" />
    
    			<input type="submit" value="Login" name="submit" />
    
    		</form>
    	</div><!-- #wrapper -->
  9. Autor dieses Themas

    schau-dich-shlau

    schau-dich-shlau hat kostenlosen Webspace.


    Jetzt kommt die Fehlermeldung ich kann mich nicht einloggen.:mad:

    Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in E:\xampp\htdocs\spiele\login\login.php on line 25
  10. jetzt wird das programm in der mitte unterbrochen! dann kopierst bitte ALLE ausgaben und postest sie hier. bitte!

    das also ausführen:
    <?php
            $seitentitel = 'Login';
            require_once('includes/zugang.php');
    
            $fehlermldg = "";
    
            if (!isset($_SESSION['id'])) {
                if (isset($_POST['submit'])) {
    
                    $db = mysqli_connect(DB_HOST, DB_BENUTZER, DB_PASSWORT, DB_NAME);
                        mysqli_set_charset($db, "utf8");
    
                    $nutzername = mysqli_real_escape_string($db, trim($_POST['nutzername']));
                    $passwort = mysqli_real_escape_string($db, trim($_POST['passwort']));
    
                    if (!empty($nutzername) && !empty($passwort)) {
    
                        $sql = <<< EOT
    SELECT id, nutzername, email
      FROM nutzer
      WHERE nutzername = '$nutzername' AND passwort = SHA($passwort)
    EOT;
                        $daten = mysqli_query($db, $sql);
    exit(mysqli_error($db)."<hr /><pre>$sql");
                        if (mysqli_num_rows($daten) == 1) {
    
                          // Login erfolgreich, also die Cookies setzen und den Benutzer zur Hauptseite umleiten
                          $zeile = mysqli_fetch_array($daten);
                          $_SESSION['id'] = $zeile['id'];
                          $_SESSION['nutzername'] = $zeile['nutzername'];
                          $_SESSION['email'] = $zeile['email'];
                          setcookie('id', $zeile['id'], time() + (60 * 60 * 24 * 30));    // Verfällt in 30 Tagen
                          setcookie('nutzername', $zeile['nutzername'], time() + (60 * 60 * 24 * 30));  // Verfällt in 30 Tagen
                          $hauptseite = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/seite2.php';
                          mysqli_close($db);
                          header('Location: ' . $hauptseite);
                          exit();
                        } else {
                            $fehlermldg = 'Sie m&uuml;ssen g&uuml;ltige Zugangsdaten eingeben, um sich einzuloggen.';
                        }
                    } else {
                        $fehlermldg = 'Sie m&uuml;ssen Ihre Zugangsdaten eingeben, um sich einzuloggen.';
                    }
                }
            }
        ?>
        <div id="wrapper">
    
            <?php
                require_once('includes/header.php');
                    if($fehlermldg != "") {
                        echo '<p class="fail">' . $fehlermldg . '</p>';
                    }
            ?>
            <h2>Login</h2>
            <form method="post" action="login.php">
    
                <label for="nutzername">Benutzername:</label>
    
                <input type="text" name="nutzername" />
    
                <label for="passwort">Passwort:</label>
                <input type="password" name="passwort" />
    
                <input type="submit" value="Login" name="submit" />
    
            </form>
        </div><!-- #wrapper -->
  11. Autor dieses Themas

    schau-dich-shlau

    schau-dich-shlau hat kostenlosen Webspace.



    Unknown column 'mm' in 'where clause'
    SELECT id, nutzername, email
    FROM nutzer
    WHERE nutzername = 'manuel' AND passwort = SHA(mm)
  12. schau-dich-shlau schrieb:


    Unknown column 'mm' in 'where clause'
    SELECT id, nutzername, email
    FROM nutzer
    WHERE nutzername = 'manuel' AND passwort = SHA(mm)
    ok. zeile 21 lautet
    WHERE nutzername = '$nutzername' AND passwort = SHA('$passwort')
    also statt SHA($passwort) schreibst 'SHA('$passwort')' (also $passwort zwischen einfachen aufführungszeichen). natürlich nimmst jetzt zeile 24 unbedingt raus (einfach löschen)!

    und jetzt solltest dein passwort 'mm' dringendst ändern ;)

    Beitrag zuletzt geändert: 5.8.2013 19:17:44 von czibere
  13. Autor dieses Themas

    schau-dich-shlau

    schau-dich-shlau hat kostenlosen Webspace.

    Banke es geht.:thumb:

    Aber wie kann ich die Daten ausgeben.:slant:
  14. schau-dich-shlau schrieb:
    Banke es geht.:thumb:

    Aber wie kann ich die Daten ausgeben.:slant:
    einfach:
    echo "<p>Nutzer: {$_SESSION['nutzername']}</p>\n";
    echo "<p>Email: {$_SESSION['email']}</p>\n";
    aber am einfachsten geht all das, wenn du php lernst ;)
  15. Autor dieses Themas

    schau-dich-shlau

    schau-dich-shlau hat kostenlosen Webspace.

    Hallo,
    Es geht schon wieder was nicht.:slant:

    Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, boolean given in E:\xampp\htdocs\spiele\login\login.php on line 25


    <?php
            $seitentitel = 'Login';
            require_once('includes/zugang.php');
     
            $fehlermldg = "";
     
            if (!isset($_SESSION['id'])) {
                if (isset($_POST['submit'])) {
     
                    $db = mysqli_connect(DB_HOST, DB_BENUTZER, DB_PASSWORT, DB_NAME);
                        mysqli_set_charset($db, "utf8");
     
                    $nutzername = mysqli_real_escape_string($db, trim($_POST['nutzername']));
                    $passwort = mysqli_real_escape_string($db, trim($_POST['passwort']));
     
                    if (!empty($nutzername) && !empty($passwort)) {
     
                        $sql = <<< EOT
    SELECT id, nutzername, email
      FROM nutzernutzername
      WHERE nutzername = '$nutzername' AND passwort = SHA('$passwort')
    EOT;
                        $daten = mysqli_query($db, $sql);
     
                        if (mysqli_num_rows($daten) == 1) {
     
                          // Login erfolgreich, also die Cookies setzen und den Benutzer zur Hauptseite umleiten
                          $zeile = mysqli_fetch_array($daten);
                          $_SESSION['id'] = $zeile['id'];
                          $_SESSION['nutzername'] = $zeile['nutzername'];
                          $_SESSION['email'] = $zeile['email'];
                          setcookie('id', $zeile['id'], time() + (60 * 60 * 24 * 30));    // Verfällt in 30 Tagen
                          setcookie('nutzername', $zeile['nutzername'], time() + (60 * 60 * 24 * 30));  // Verfällt in 30 Tagen
                          $hauptseite = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/seite2.php';
                          mysqli_close($db);
                          header('Location: ' . $hauptseite);
                          exit();
                        } else {
                            $fehlermldg = 'Sie m&uuml;ssen g&uuml;ltige Zugangsdaten eingeben, um sich einzuloggen.';
                        }
                    } else {
                        $fehlermldg = 'Sie m&uuml;ssen Ihre Zugangsdaten eingeben, um sich einzuloggen.';
                    }
                }
            }
        ?>
        <div id="wrapper">
     
            <?php
                require_once('includes/header.php');
                    if($fehlermldg != "") {
                        echo '<p class="fail">' . $fehlermldg . '</p>';
                    }
            ?>
            <h2>Login</h2>
            <form method="post" action="login.php">
     
                <label for="nutzername">Benutzername:</label>
     
                <input type="text" name="nutzername" />
     
                <label for="passwort">Passwort:</label>
                <input type="password" name="passwort" />
     
                <input type="submit" value="Login" name="submit" />
     
            </form>
        </div><!-- #wrapper -->
  16. schau-dich-shlau schrieb:
    ... Es geht schon wieder was nicht ...
    ja! deine konzentration ;)
    du hast die query geändert! meine query lautet
    $sql = <<< EOT
    SELECT id, nutzername, email
      FROM nutzer
      WHERE nutzername = '$nutzername' AND passwort = SHA('$passwort')
    EOT;
    und deine ist
    $sql = <<< EOT
    SELECT id, nutzername, email
      FROM nutzernutzername
      WHERE nutzername = '$nutzername' AND passwort = SHA('$passwort')
    EOT;
    demnach ist eine tabelle mit den namen `nutzernutzername` nicht vorhanden!

    Beitrag zuletzt geändert: 6.8.2013 0:18:49 von czibere
  17. Autor dieses Themas

    schau-dich-shlau

    schau-dich-shlau hat kostenlosen Webspace.


    Danke dafür nochmal.:prost:

    Ich haben ein Problem Namen wird angezeigt Aber Email nicht was ist falsch.:wall:

    Nutzer: manuel


    Notice: Undefined index: email in E:\xampp\htdocs\spiele\profil-einstellung\index.php on line 30
    email:


    <?php
    
    	require_once('../login/includes/sitzungsstart.php');
    	$seitentitel = 'Memberarea';
    	require_once('../login/includes/zugang.php');
    		
    	if(isset($_SESSION['nutzername'])) {
    		$user = $_SESSION['nutzername'];
    
    		$db = mysqli_connect(DB_HOST, DB_BENUTZER, DB_PASSWORT, DB_NAME);
    			mysqli_set_charset($db, "utf8");
    
    		$sql = "SELECT aktiviert, nutzername FROM nutzer WHERE nutzername = '$user' ";
    		$daten = mysqli_query($db, $sql);
    		$zeile = mysqli_fetch_array($daten);
    
    		if ($zeile['aktiviert'] == 0) {
    
    			$aktivierungsseite = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/aktivierung.php';
    				header('Location:' . $aktivierungsseite);
    
    			mysqli_close($db);
    
    		}		
    	}
    ?>
    
    <?php
    echo "<p>Nutzer: {$_SESSION['nutzername']}</p>\n";
    echo "<p>email: {$_SESSION['email']}</p>\n";	
    ?>
  18. schau-dich-shlau schrieb:
    ... Notice: Undefined index: email in E:\xampp\htdocs\spiele\profil-einstellung\index.php on line 30
    email: ...
    liest du keine pn-s? du hast es von mir auf diesem wege bekommen!
  19. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!