Fehler bei LogIn

Eiszwerg

Erfahrenes Mitglied
Habe das LogIn-System von Kalletronic ausprobiert und bekomme folgende Fehlermeldung, wenn ich versuche mich einzuloggen:

Warning: open(/tmp\sess_974be8776488a6d3b48f3f72313d4fad, O_RDWR) failed: m (2) in e:\homepages\login\login.php on line 2

Warning: Cannot add header information - headers already sent by (output started at e:\homepages\login\login.php:2) in e:\homepages\login\login.php on line 32

Warning: open(/tmp\sess_974be8776488a6d3b48f3f72313d4fad, O_RDWR) failed: m (2) in Unknown on line 0

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

Wer weiss Rat?

Danke im Vorraus!
 
icezw3rg hat gesagt.:
Warning: open(/tmp\sess_974be8776488a6d3b48f3f72313d4fad, O_RDWR) failed: m (2) in e:\homepages\login\login.php on line 2
heißt, dass php die sessiondaten nicht in die Sessiondatei schreiben kann bzw darf, schau dir mal die funktion session_save_path() an, achte darauf, dass php in das Verzeichnis schreiben darf.
Warning: Cannot add header information - headers already sent by (output started at e:\homepages\login\login.php:2) in e:\homepages\login\login.php on line 32
Wenn noch sachen in der Session geschrieben werden sollen dürfen noch keine Ausgaben an den Benutzter gesendet werden, was in deinem Fall vermutlich die erste Fehlermeldung ist. Wahrscheinlich verschwindet die Fehlermeldung wenn du den ersten Fehler behoben hast.


gruß tob
 
Aber schon doof, dass der Author das script dann rausgibt ;)


Wo finde ich die funktion session_save_path() ?? Was genau meinst Du damit?

Vielen Dank für die Hilfe soweit
 
Hier noch mal der entsprechnde sourcecode:

PHP:
<?php 
// Datenbankverbindung aufbauen 
$connectionid = mysql_connect ("localhost", "blubb", "bla"); 
if (!mysql_select_db ("4500540", $connectionid)) 
{ 
  die ("Keine Verbindung zur Datenbank"); 
} 

$sql = "SELECT ". 
         "id, Nickname, Nachname, Vorname ". 
       "FROM ". 
         "user ". 
       "WHERE ". 
         "(Nickname like '$name') AND ". 
         "(Kennwort = '".md5 ($password)."')"; 
$result = mysql_query ($sql); 

if (mysql_num_rows ($result) > 0) 
{ 
  // Benutzerdaten in ein Array auslesen. 
  $data = mysql_fetch_array ($result); 

  // Sessionvariablen erstellen und registrieren 
  $user_id = $data["Id"]; 
  $user_nickname = $data["Nickname"]; 
  $user_nachname = $data["Nachname"]; 
  $user_vorname = $data["Vorname"]; 

  session_register("user_id", "user_nickname", "user_nachname", "user_vorname"); 

  header ("Location: intern.php"); 
} 
else 
{ 
  header ("Location: formular.php?fehler=1"); 
} 
?>

ich kann da keine Ausgabe finden.
 
naja die Ausgab ist die Fehlermeldung...
einfach im manual schauen ;) http://de.php.net/session_save_path

Du kannst einfach in die erste Zeile session_save_path("c:/session");
schreiben. Dann musst du noch dafür sorgen, dass das Verzeichniss c:/session existiert und nicht schreibgeschützt ist. Dann müsste alles funktionieren.

gruß tob
 
nun funzt das... aber ich werde ned auf die seite weitergeleitet, die wie angegeben inter.php sein soll...
Noch ein Denkanstoss?
 
Anmerkung: HTTP/1.1 verlangt einen absoluten URI inkl. dem Schema, Hostnamen und absoluten Pfad als Argument von Location:, aber manche Clients akzeptieren auch relative URIs. Gewöhnlich können Sie mittels $_SERVER['HTTP_HOST'], $_SERVER['PHP_SELF'] und dirname() aus einem relativen Link einen absoluten URI selbst erstellen:


<?php
header("Location: http://".$_SERVER['HTTP_HOST']
.dirname($_SERVER['PHP_SELF'])
."/".$relative_url);
?>
auch mal wieder von php.net: http://de.php.net/header
hoffe es hilft.
gruß tob
 
Bezieht sich folgende Fehlermeldung auch darauf?

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /usr/local/httpd/htdocs/kunden/cbn560/html/login/home.php:5) in /usr/local/httpd/htdocs/kunden/cbn560/html/login/checkuser.php on line 3

Danke für Hilfe!!!

Da tritt der Fehler auf:
http://socs.comball.net/login/home.php

einloggen: admin & admin
 
Zuletzt bearbeitet:
icezw3rg hat gesagt.:
Bezieht sich folgende Fehlermeldung auch darauf?

Ja, hier werden offenbar Daten an den Browser geschickt, bevor die Session gestartet wird. session_start() muss immer vor der ersten Ausgabe von was auch immer erfolgen, wie tob schon geschrieben hat. Ich schätze, das Problem besteht darin, dass du das Login Script includest, und das 'Mutterscript' bereits Daten verschickt hat...
 
So ist es... die Mutter.php beherbergt das anmelde-formular, und auch alle anderen (checkuser, intern etc) ... wie kann ich das prob nun umgehen? Einfach in die Mutter.php ganz oben session_start(); rein??


sodala... das hat soweit geklappt... habe nun keine fehler mehr beim LogIn... mal sehen was sonst noch kommt ;)

Vielen Dank erstmal an alle Beteiligten!!!
 
Zuletzt bearbeitet:
Zurück