Veröffentlicht 31. Oktober 200519 j Hallo Leute, bin gerade dabei mir nen kleinen Webshop aufzubauen. Habe dabei einen eigenen Server mit feaster IP,Win2003 Server und PHP 5. Soweit läuft das Ding, nur mit der Session bekomme ich probleme. Es werden die Session im Verzeichnis angelegt, ich habe auch die Zugriffe auf die Verzeichnisse und Datein. Aber es kommt immer folgende Fehlermeldung: Warning: Unknown: The session id contains illegal characters, valid characters are a-z, A-Z, 0-9 and '-,' 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 (c:\php\sessions) in Unknown on line 0 Hier das Script: <?php @session_start(); $_SESSION['login'] = md5(uniqid(rand())); echo "<a href=\"seite2.php?PHPSESSID\">Seite 2</a>"; ?> hier die Seite 2: <?php @session_start(); echo $_SESSION['login']; ?> Kann mir jemand helfen ?? Gruß und Danke andy_mann
31. Oktober 200519 j googleMich oder evtl schon deine lösung: klickMich aus dem inhalt: This can occur if you are using mySQL and you have not set up your user and password correctly. To solve the problem, examine your \settings\override\site.ini.append.php file to ensure that the values in the [DatabaseSettings] section are correct. ich selbst hatte den fehler noch nie, hoffe aber dass ich dir bisschen weiterhelfen konnte. viel erfolg
31. Oktober 200519 j Also als erstes würde ich die Fehlerunterdrückung (das @ Zeichen) vor dem session_start() wegnehmen. Wenn der Quellcode auf der 2. Seite excakt genauso ist wie Du ihn hier gepostest hast, bekommst Du da nämlich den Fehler, dass bereits ein Header gesendet wurde. Demnach existiert keine Session-ID und Du fragst eine Variable ab, die nicht zu einer Session gehört. Ich gehe dabei einfach Mal davon aus, dass session_autostart bei Dir deaktiviert ist. Abgesehen davon übergibst Du die Session-ID und den Namen der Session nicht mit PHPSESSID sondern einfach mit SID. Das ist die Konstante dafür.
1. November 200519 j Der "Header already sent"-Fehler, tritt auf, wenn vor der Funktion schon irgendeine Form von HTML-Ausgegeben wurde (also z.b. <html>...). <? session_start(); ?> also ganz an den Anfang.
2. November 200519 j Autor Hallo, danke euch, ich habe de <?php session_start(); ?> ganz an den Anfang gesetzt. Es kommt jetzt keine Fehlermeldung mer. Allerdings, wenn ich jetzt echo "<a href=\"seite2.php?SID\">Seite 2</a>"; linke, erscheint auf der 2. Seite einen neu session ID und ich kann nicht auf meine Variablen zugreiffen. Was mache ich denn falsch ?? Gruß andy_mann
2. November 200519 j Du must du die SID auch übergben und bei session_start(...) sie auch benutzen, sonst kannst du logischerweise nicht auf die selbe Session zugreifen. Wie wäre es, wenn du mal selbst nachliest, wie das geht? PHP hat nämlich eine gute Doku: http://de2.php.net/manual/de/ref.session.php
2. November 200519 j Nur so als Tipp. Wenn Du die Session- ID selbst bestimmen willst, dann solltest Du das auch mit session_id() tun.
3. November 200519 j Autor ääähhh... jetzt blick ichs eigentlich gleich gar nicht mer..... Komme da mit dem anlegen der ID und dann mit der Übergabe auf andere Seite und anschließend auf die zuvor angelegten Variablen nicht zu recht... Hat jemand vieleicht nen Beispiel Code ?? Gruß und Danke andy_mann
3. November 200519 j Autor Hallo, vielen Dank, jetzt scheint es zu funktionieren. Das was ich falsch gemacht habe lag an: echo '<br /><a href="page2.php?' . SID . '">page 2</a>'; in . SID . ...... Gruß und Danke andy_mann
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.