DePlague Geschrieben 13. März 2002 Geschrieben 13. März 2002 Hi, also ich wollte mich mal an Session ransetzen aber ich bekomme immer Fehlermeldungen bei der Ausgabeseite... login Datei: <form method="POST" action="main.php"> <table> <tr> <td> <tr> <td>User:</td> <td><input type="text" name="user" size="20"></td> </tr> <tr> <td>Passwort:</td> <td><input type="password" name="pass" size="20"></td> </tr> </table> <p><input type="submit" value="Login" name="submit"></td> </tr> </table> </center> </form> main.php <? session_start(); session_register ("username", "password", "hostname", "dbName"); $username = $user; $password = $pass; $hostname = "brewster"; $dbName = "Intranetdb"; echo "hallo $username<br>"; ?> Ausgabe: hallo admin PHP Warning: open(/tmp\sess_5d6033d7392a845976c1eb5aa4974585, O_RDWR) failed: No such file or directory (2) in c:\inetpub\wwwroot\user\main.php on line 2 PHP Warning: open (/tmp\sess_5d6033d7392a845976c1eb5aa4974585, O_RDWR) failed: No such file or directory (2) in Unknown on line 0 PHP 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 Alles was ich dazugefunden habe ist das man in der php.ini den session.save_path setzen muss. Problem ist blos das in meiner php.ini dieser Eintrag nicht existiert... hier mal die php.ini mit dem Session-Abschnitt [Session] ; Handler used to store/retrieve data. session.save_handler = files ; Argument passed to save_handler. In the case of files, this is the path ; where data files are stored. Note: Windows users have to change this ; variable in order to use PHP's session functions. ; Whether to use cookies. session.use_cookies = 1 ; Name of the session (used as cookie name). session.name = PHPSESSID ; Initialize session on request startup. session.auto_start = 0 ; Lifetime in seconds of cookie or, if 0, until browser is restarted. session.cookie_lifetime = 0 ; The path for which the cookie is valid. session.cookie_path = \ ; The domain for which the cookie is valid. session.cookie_domain = ; Handler used to serialize data. php is the standard serializer of PHP. session.serialize_handler = php ; Percentual probability that the 'garbage collection' process is started ; on every session initialization. session.gc_probability = 1 ; After this number of seconds, stored data will be seen as 'garbage' and ; cleaned up by the garbage collection process. session.gc_maxlifetime = 1440 ; Check HTTP Referer to invalidate externally stored URLs containing ids. session.referer_check = ; How many bytes to read from the file. session.entropy_length = 0 ; Specified here to create the session id. session.entropy_file = ;session.entropy_length = 16 ;session.entropy_file = /dev/urandom ; Set to {nocache,private,public} to determine HTTP caching aspects. session.cache_limiter = nocache ; Document expires after n minutes. session.cache_expire = 180 ; use transient sid support if enabled by compiling with --enable-trans-sid. session.use_trans_sid = 1 url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry" THX4HELP DePlague Zitieren
beetFreeQ Geschrieben 13. März 2002 Geschrieben 13. März 2002 Hmm, bau die Zeile doch einfach in Deine php.ini ein! Und setz da dann ein bestehendes Verzeichnis ein, in dem die Sessions abgelegt werden sollen! Also z.B. c:\temp Für ne genauere Doku reicht es sicher auch, mal "session.save_path" bei Google einzugeben... Viel Erfolg! Zitieren
Valium Geschrieben 13. März 2002 Geschrieben 13. März 2002 Warning: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/tmp) in /tmp ? Das macht mich stutzig. Unter Windows sollte da doch sowas wie \tmp stehen, bzw. der absolute Pfad im Dateisystem... Setzt mal Deinen Session Save Path mit http://www.php.net/manual/de/function.session-save-path.php in ein anderes Verzeichnis und spiel mal damit rum, ich denke es liegt wirklich nur daran, dass es unter Windows keinen /tmp Pfad geben kann. Zitieren
Valium Geschrieben 13. März 2002 Geschrieben 13. März 2002 Vielleicht trifft auch das auf Dich zu: http://www.slingandrock.com/InfoCentral/Forums/ThreadView.asp?ThreadID=15&ForumID=5 Den Pfad also in der php.ini auf session.save_path = c:\tmp setzen, egal ob da schon was drinsteht oder nicht. Standard ist nähmlich /tmp, was unter Windows wie oben gesagt nicht geht. Zitieren
DePlague Geschrieben 13. März 2002 Autor Geschrieben 13. März 2002 Hmm also erstmal danke scheint zu gehn frag mich aber troßdem wieso der Eintrag nicht vorhanden war? Aber mal ne andere Frage an die Session (bzw. Keks *g*) werden doch nur die Werte übergeben/gespeichert wenn ich die Variablen mit session_register ("[varname]"); registriert habe und dann solange darin gespeichert bis ich sie überschreibe oder die Session beende, oder? Weil komischer Weise habe ich (nicht bei dem Bsp.-Code oben) nen Wert in einer Variable drin ( Admin&PHPSESSID=2f1abb1711c2a6154b988330ec926bea ) der da nicht reingehört aber so wie's aussieht von der Session kommt. Und ich habe die Variable nicht in der Session regiestriert !!!:eek: Zitieren
DanielH Geschrieben 13. März 2002 Geschrieben 13. März 2002 Die SESSION-ID wird automatisch an verlinkte Scripte übergeben. Müssten wohl sogar die letzten 2 Zeilen deines PHP.ini auszuges sein, was das bewirkt. MfG Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.