Username nach Login beibehalten
Lisa
- php
Hallo,
1.Ich habe seit neuestem einen eigenen Login(der auch prima funktioniert.) Das Problem ist nur das , nachdem man sich eingeloggt hat die Naten alle weg sind.Das heißt ich kan z.B. nicht mehr die Variable $name benutzen was ich aber gerne würde.Gibt es einen kleinen Code dafür das die Daten beibehalten werden?
2.Würde ich gerne eine bestimmte variable aus user/".$name.".txt ausgeben. Nehmen wir mal ein beispiel fpr die Datei:
Benjamin,geheim,rot
Das erste ist der Nick das zweite das Passwort und das dritte seine Lieblingsfarbe.Nahcdem Login würde ich jetzt gerne schreiben
echo "$name deine LIeblingsfarbe ist $lieblingsfarbe.";
So sieht übrigens der größte Teil meiner Loginzusammenstellung aua:
<?php
session_start();
$trennzeichen = ",";
if(isset($_POST['login'])) {
// Name und Passwort einer Variablen zuordnen
$name = $_POST['name'];
$pass = $_POST['pass'];
// Nach Username suchen
if(file_exists("user/".$name.".txt")) {
$file = file("user/".$name.".txt");
$user_vorhanden = TRUE;
} else {
echo "Benutzername nicht gefunden";
$user_vorhanden = FALSE;
}
// Wenn User vorhanden: Logindaten zwischenspeichern
if($user_vorhanden) {
$arr = explode($trennzeichen, $file['0']);
$a_name = $arr['0'];
$a_pass = $arr['1'];
// Benutzernamen und Passwort verifizieren
if($a_name == $name && $a_pass == $pass) {
$_SESSION["logedin"] = TRUE;
echo "Login erfolgreich!<br> $name,bitte klicke <a href="home.php" TARGET="home">hier</a> um zur Internen Startseite zu gelangen. <br>";
{
echo("<a href='user/".$name.".txt'>Übergeben</a> ");
}
} else {
echo "Die Daten waren falsch.";
}
}
}
?>
würde mich freuen wenn ihr mir helfen könnt,
Lisa
Gibt es einen kleinen Code dafür das die Daten beibehalten werden?
2.Würde ich gerne eine bestimmte variable aus user/".$name.".txt ausgeben.
Dafür müsstest du dir zuerst im klaren sein, wie du die Daten in deiner Datei speicherst. Für deinen einfachen Fall könntest du zum Beispiel in jeder Zeile einen Bezeichner und einen Wert speichern. Z.B. so:
benutzername=ichduundes
passwort=irg4endwas3verbotenes
lieblingsfarbe=grün
anschließend dann einfach die datei wie gehabt mit file auslesen, dann das rückgabearray durchlaufen, jede zeile am Gleichheitszeichen exploden und in ein neues Array der Form array('bezeichner'=>'wert') speichern. (Speichern in einzelnen Variablen wäre zwar auch möglich, aber auch riskant, dass du damit irgendwas anderes überschreibst.)
Beispiel:
$fileresult=file('deinedatei.txt');
$wertearray = array();
foreach($fileresult as $zeile) {
$temp = explode('=', $zeile);
unset($temp[0]);
$wertearray[$temp[0]] = implode($temp);
}
$fileresult=file('deinedatei.txt');
aber es soll ja auf die datei des eingeloggten Benutzers zugegriffen werden.das heißt wenn ein Benjamin eingeloggt ist soll auf benjamin.txt zugegriffen werden udn wenn eine Leoni on ist auf Leoni.txt.Das heißt es gibt keine feste URL sondern nur eine Variable $name.Im Loginscript steht
file_exists("user/".$name.".txt"
$fileresult=file('deinedatei.txt');
aber es soll ja auf die datei des eingeloggten Benutzers zugegriffen werden.
Das ist jetzt nicht dein ernst, oder? >>>Lesen, denken, verstehen<<<
*haut sich kräftig an den Kopf, überlegt einen Augenblick und verlässt anschließend seufzend den Thread*
Hi,
1.Ich habe seit neuestem einen eigenen Login(der auch prima funktioniert.) Das Problem ist nur das , nachdem man sich eingeloggt hat die Naten alle weg sind.Das heißt ich kan z.B. nicht mehr die Variable $name benutzen was ich aber gerne würde.Gibt es einen kleinen Code dafür das die Daten beibehalten werden?
ein Konzept. Es nennt sich "Session". Nutze es einfach.
2.Würde ich gerne eine bestimmte variable aus user/".$name.".txt ausgeben. Nehmen wir mal ein beispiel fpr die Datei:
Benjamin,geheim,rot
Das erste ist der Nick das zweite das Passwort
Speichere niemals ein Passwort im Klartext. Nie. Nirgendwo.
und das dritte seine Lieblingsfarbe.Nahcdem Login würde ich jetzt gerne schreiben
echo "$name deine LIeblingsfarbe ist $lieblingsfarbe.";
Verwende Deine Session.
Cheatah