Hallo zusammen
Ich bin totaler PHP - Neuling, ich beherrsche jedoch c# als Objektorientierte sprache und bin in Webtechnologie auch kein Neuling. Daher kann ich mir vieler erraten, wie es in PHP funktioniert, doch hier komme ich selbst mit Google nicht darauf:
Ich bin daran eine Umfragewebsite zu gestalten mit einem Login, welches die Logindaten in eine Textdatei abspeichert bzw. ausliest. Die Antworten zu den Fragen werden ebenfalls in eine Textdatei gespeichert.
Damit später die Antworten einem User zugewiesen werden können, muss ich bei der Auswertung den Benutzernamen des aktuellen Benutzers wissen und mit in die Textdatei schreiben. Daher würde ich gerne Sessions verwenden.
bei der login.php datei habe ich folgenden Code:
Ich habe die Session initialisiert und eine Variable "Username" inder Superglobalen Variable $_SESSION angelegt. Darin soll die lokale Variable "Username" vom Script abgelegt werden. Soweit treten keine Fehler auf, wobei ich nicht weiss, ob das Script auch das macht.
wenn ich jedoch am Ende mit dem Script auswerten.php die Daten in die Textdatei schreiben möchte, findet er die Variable "username" in $_SESSION["username"] nicht. Der Fehler lautet:
Hier wäre der Code von auswerten.php. Ist sicherlich nur eine Kleinigkeit, aber ich komm einfach nicht drauf, was ich falsch mache!
Gruss und Dank im Voraus
Atreju
Ich bin totaler PHP - Neuling, ich beherrsche jedoch c# als Objektorientierte sprache und bin in Webtechnologie auch kein Neuling. Daher kann ich mir vieler erraten, wie es in PHP funktioniert, doch hier komme ich selbst mit Google nicht darauf:
Ich bin daran eine Umfragewebsite zu gestalten mit einem Login, welches die Logindaten in eine Textdatei abspeichert bzw. ausliest. Die Antworten zu den Fragen werden ebenfalls in eine Textdatei gespeichert.
Damit später die Antworten einem User zugewiesen werden können, muss ich bei der Auswertung den Benutzernamen des aktuellen Benutzers wissen und mit in die Textdatei schreiben. Daher würde ich gerne Sessions verwenden.
bei der login.php datei habe ich folgenden Code:
Code:
<?php
session_start();
$_SESSION["username"] = $username;
?>
<html>
<head>
<title>Login</title>
<meta name="author" content="Andavos">
<meta name="generator" content="Ulli Meybohms HTML EDITOR">
<link href="css/umfrage_style.css" rel="stylesheet" type="text/css" />
</head>
<body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">
<br><br>
<?php
$username = $_POST["username"];
$passwort = $_POST["password"];
$passwort = md5($passwort);
$log=0;
$userdatei = fopen ("user.txt","r");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,500);
$userdata = explode("|", $zeile);
if ($userdata[0]==$username and $passwort==trim($userdata[1]))
{
$log = 1;
header("location:kategorie.php");
}
}
fclose($userdatei);
if ($log==0)
{
ECHO " <p>Zugriff verweigert, Benutzername oder Kennwort falsch</p>
<a href=\"index.php\">ZurŸ</a>";
}
?>
Ich habe die Session initialisiert und eine Variable "Username" inder Superglobalen Variable $_SESSION angelegt. Darin soll die lokale Variable "Username" vom Script abgelegt werden. Soweit treten keine Fehler auf, wobei ich nicht weiss, ob das Script auch das macht.
wenn ich jedoch am Ende mit dem Script auswerten.php die Daten in die Textdatei schreiben möchte, findet er die Variable "username" in $_SESSION["username"] nicht. Der Fehler lautet:
Code:
Notice: Undefined index: username in C:\xampp\htdocs\Umfrage\fragen\auswerten.php on line 4
Notice: Undefined index: username in C:\xampp\htdocs\Umfrage\fragen\auswerten.php on line 11
Antworten erfasst
zum Login
Hier wäre der Code von auswerten.php. Ist sicherlich nur eine Kleinigkeit, aber ich komm einfach nicht drauf, was ich falsch mache!
Code:
<?php
session_start();
$username = $_SESSION["username"];
if( isset( $_POST["Frage1"])) {
$antwort1 = $_REQUEST["Frage1"];
$antwort2 = $_REQUEST["Frage2"];
//Echo $antwort1;
//Echo $antwort2;
ECHO $_SESSION["username"];
$antwortdatei = fopen ("../antworten/antworten.txt","a");
fwrite($antwortdatei, $username);
fwrite($antwortdatei, "|");
fwrite($antwortdatei, $antwort1);
fwrite($antwortdatei, "|");
fwrite($antwortdatei, $antwort2);
fwrite($antwortdatei, "\n");
fclose($antwortdatei);
echo "$username Antworten erfasst<br><a href=\"../index.php\">zum Login</a>";
}
else {
ECHO "Es wurde keine Auswahl getroffen";
}
?>
Gruss und Dank im Voraus
Atreju