SESSION_ID Problem

anthrodog

Grünschnabel
Hallo, zu allererst, ich bin Neuling in PHP und habe mir ein schickes Buch gekauft. Los geht es nach kleinen Vorbereitungen mit einem simplen login. Es sind 3 Seiten die folgendermassen aussehen.

Code:
<form action=begruessung.php>
Benutzername: <input type=text name=benutzer>
</form>

Code:
<?php
session_start();
$_SESSION["benutzer"] = $REQUEST["benutzer"];
?>

Hallo, <?php echo $_SESSION["benutzer"] ?>
die Anmeldung war erfolgreich.
	
<a href=abmeldung.php>Abmeldung</a>

Code:
<?php
session_start();
?>

Hallo, <?php echo $SESSION["benutzer"]; ?>
die Abmeldung wird durchgef&uuml;hrt.

<?php session_destroy(); ?>

Nun bekomme ich aber nachdem ich in der anmeldung.html einen namen eingebe und enter drücke folgende Meldung:

Warning: session_start(): open(/tmp\sess_c389b60818dcc2c79a73982bde05dd00, O_RDWR) failed: No such file or directory (2) in c:\apache\htdocs\begruessung.php on line 3

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\apache\htdocs\begruessung.php:2) in c:\apache\htdocs\begruessung.php on line 3
Hallo, die Anmeldung war erfolgreich. Abmeldung
Warning: Unknown(): open(/tmp\sess_c389b60818dcc2c79a73982bde05dd00, O_RDWR) failed: No such file or directory (2) in Unknown on line 0

Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in Unknown on line 0

In dem Buch wird nicht weiter darauf eingegangen was an Fehlermeldungen kommen kann, ausser diese Header Fehlermeldung, aber so wie es da behoben werden soll funktioniert es nicht. Ist etwas frustrierend wenn gleich am Anfang sowas einfaches nicht klappt. Ich denke das es an der konfiguration der php.ini liegt, denn die paar code Zeilen sind doch wohl nicht falsch. Oder?

Vielen Dank.

bye

P.S. Ich hab auch hier im Forum schon gesucht aber nix gefunden.
 
Zuletzt bearbeitet:
Der Fehlermeldung nach zu urteilen meine ich, dass der Webserver auf einem Windows-Betriebssystem läuft.
Da Windows als Unterteilung bei Pfadangaben das Backslash, das Internet jedoch das Slash, musst du die Angabe des Speicherorts der Session-Daten ändern.

Dazu öffnest du die php.ini-Datei in deinem Systemordner, suchst nach einem Eintrag session.save_path und änderst ihn wie folgt:
&nbsp;&nbsp;session.save_path = c:/programme/apache group/apache/tmp.
 
Ja Hallo, vielen Dank erstmal. Ich habe 2 Variablen gefunden und angepasst. Und zwar folgende:

session.save_path = "N;c:/Apache/tmp."

session.save_path = c:/Apache/tmp.

Desweiteren musste ich wie in der php.ini steht, den Ordner "tmp" selber erstellen, das ganze hat bis auf eine Meldung auch alles geklappt.

Nun bekomme ich nurnoch die Meldung:

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\apache\htdocs\begruessung.php:2) in c:\apache\htdocs\begruessung.php on line 3

Hast Du dafür vielleicht auch noch eine Lösung?

Danke
 
Du darfst vor dem Starten der Session keine Ausgabe stattfinden lassen. Kein HTML und nicht mal Leerzeichen o.Ä.
Über die Suche findest du dazu bestimmt massig Beiträge.
 
Zurück