Nach Einloggen, Daten aus MYSQL der zugehörigen ID anzeigen ?!

Zenti

Erfahrenes Mitglied
Guten Tag,

Ich komm mal wieder bei einem Problem nicht weiter...
Ich habe ein Login Script das mit MYSQL & Sessions arbeitet.



+++ DAS LOGIN SCRIPT

PHP:
<?php
session_start();
include "mysql_connection.php";


$kundennummer = mysql_real_escape_string($_POST["id"]);
$passwort = $_POST["passwort"];

$abfrage = "SELECT ID, passwort FROM kunden WHERE ID = '".$kundennummer."' LIMIT 1";
$ergebnis = mysql_query($abfrage);
$row = mysql_fetch_object($ergebnis);
if($row->passwort == $passwort && mysql_num_rows($ergebnis) == 1)
    {
    $_SESSION["kundennummer"] = $kundennummer;
    echo "Login erfolgreich. <br> <a href=\"member.php\">Geschützer Bereich</a>";
    }
else
    {
    echo "Benutzername und/oder Passwort waren falsch. <a href=\"login.php\">Login</a>";
    }

?>



+++ GESCHÜTZE DATEI

PHP:
<?php

session_start();

if(!isset($_SESSION["kundennummer"]))
   {
   echo "Bitte erst <a href=\"login.php\">einloggen</a>";
   exit;
   }
   

?>


Ich möchte die Daten die in der MYSQL Tabelle stehen für jeden individuellen Login ausgeben.
Also wenn sich Kundennummer 10050 Einloggt dann sollen seine Daten die er bei der Registrierung angegeben hat,
angezeigt werden.

Ich habe hier einige Beiträge vor diesem Post über das Thema durch gelesen. Doch leider bin ich nicht wirklich schlau
daraus geworden. Ich habe mitbekommen das Ich die Daten alle in die Session speichern muss damit ich sie anschließend
ausgeben kann. Leider weis ich nicht wie ich das anstellen soll bzw. wie ich die Daten aus der MYSQL Tabelle für jede ID in die
Session bekomme.

Ist das überhaupt der richtige Weg um ein vernünftiges System zu programmieren oder gibt es bessere bzw. einfachere Möglichkeiten?

Ich hoffe das mit jemand helfen bzw. paar Tipps geben kann.
Vielen Dank schon einmal :)

mit freundlichen Grüßen,
*Zenti
 
Wenn die Kundennummer in der Session vorhanden ist, kannst du doch an Hand Dieser die Daten aus der Datenbank holen:
PHP:
if(!isset($_SESSION["kundennummer"])) {
    echo "Bitte erst <a href=\"login.php\">einloggen</a>"; 
    exit; 
} else {
    $abfrage = "SELECT * FROM kunden WHERE ID = '".$_SESSION["kundennummer"]."' LIMIT 1"; 
    $ergebnis = mysql_query($abfrage); 
    $row = mysql_fetch_object($ergebnis); 
    echo 'Willkommen ' . $row->vorname . ' ' . $row->nachname;
}
 
xD Ahh.. ich liebe dieses Forum..
1000 Dank an tobee!

Gibt es eine Möglichkeit an hand deines Lösungsweges die rows in eine Variable zu speichern ?


+++SOWAS IN DER ART ?

PHP:
<?php

$vorname = $row->vorname
$nachname = $row->nachname

echo 'Willkommen  $vorname $nachname';

?>

Kann mir jemand erklären was die Punkte bedeuten bzw. für welche Funktion sie stehen?
z.B. bei ". $row->vorname ."

Vielen Dank schon einmal :)

mit freundlichen Grüßen,
*Zenti
 
Mithilfe eines Punktes lassen sich 2 Strings miteinander verknüpfen/verbinden. Dann braucht man nicht innerhalb des Strings Variablen benutzen, was Probleme mit sich bringen kann.

PHP:
echo "Ein String" .
    "über mehrere ". 
    "Zeilen mit ".$Variable;

Natürlich kannst du die $row->vorname -Variablen in eine andere Variable speichern, aber was sollte das nützen außer zusätzlichen Speicher zu verbrauchen?
 
So hab mal bischen rumprobiert und siehe da... du hast vollkommen recht :)
In eine Variable brauch ich das Ganze sicherlich nicht speichern.. das bringt nichts.

Und danke für die Erklärung mit dem Punkt. Diese Information finde ich sehr nützlich ;)

Ja dann hat sich meine Frage geklärt,.. :) Danke nochmal für die Tipps.

mit freundlichen Grüßen,
*Zenti
 
Zurück