29. august 2001 - 15:32Der er
18 kommentarer og 1 løsning
?PHPSESSID=0be37d894e8cfb0872db7f009d4d7977
Hvordan undgår jeg at PHP smider dette på samtlige af mine links ? Når jeg har haft klikket på det så vises resten af sitet UDEN denne phpsessid ... men det irriterer mig at det står på den første side ... det ser uprof. ud *G*
jeg har en include fil hvori der som den første linie står: session_start()
ljweb:> Nopes .. det er den ikke, for efter første klik så virker det fint. Men jeg har læst i PHP doc. at den gør dette hvis der ikke er adgang til cookies eller at der opstår en fejl. Så sender den SessionID\'et med via URL\'en.
Bruge cookies kunne jeg måske godt, men har det bedst med Sessions ;o)
function session_set_cookie() { global $GLOBAL_DEFS; global $SESSION_COOKIE;
if($SESSION_COOKIE) { return true; }
srand((double)microtime()*1000000); $loop = true; while($loop == true) { $SESSION_COOKIE = md5(uniqid(rand())); if(!mysql_num_rows(mysql_query(\"SELECT SessionID FROM session WHERE Cookie=\'$SESSION_COOKIE\'\"))) { $loop=false; } } $Stamp = date(\"Y-m-d H:i:s\"); mysql_query(\"INSERT INTO session (Cookie,Stamp) VALUES (\'$SESSION_COOKIE\',\'$Stamp\')\") or global_site_error(\"servererror\");; setcookie(\"SESSION_COOKIE\",$SESSION_COOKIE,time()+63072000); # 630 days cookie }
function session_remove_cookie() { global $GLOBAL_DEFS; global $SESSION_COOKIE;
mysql_query(\"DELETE FROM session WHERE Cookie=\'$SESSION_COOKIE\'\"); setcookie(\"SESSION_COOKIE\",\"\",time()-3600); setcookie(\"SESSION_COOKIE\",\"\",time()-3600,$GLOBAL_DEFS[\"location_base\"].\"/\"); }
function session_link_userid($UserID) { global $SESSION_COOKIE;
if (!$UserID) $UserID = 0; mysql_query(\"UPDATE session SET UserID=$UserID WHERE Cookie=\'$SESSION_COOKIE\'\") or global_site_error(\"servererror\");; }
function session_unlink_userid() { global $SESSION_COOKIE;
mysql_query(\"UPDATE session SET UserID=0 WHERE Cookie=\'$SESSION_COOKIE\'\") or global_site_error(\"servererror\");; }
function session_get_id() { global $SESSION_COOKIE;
$res = mysql_query(\"SELECT SessionID FROM session WHERE Cookie=\'$SESSION_COOKIE\'\") or global_site_error(\"servererror\");; if(!mysql_num_rows($res)) { return 0; } $foo = mysql_fetch_array($res); return $foo[\"SessionID\"]; }
function session_get_userid() { global $SESSION_DEFS;
$res = mysql_query(\"SELECT UserID FROM session WHERE SessionID=\".$SESSION_DEFS[\"ID\"]) or global_site_error(\"servererror\");; if(!mysql_num_rows($res)) { return 0; } $foo = mysql_fetch_array($res); return $foo[\"UserID\"]; } ?>
Man kan godt sætte session styringen til at kører via cookies, men det er som i sikkert ved ganske upålideligt, da ikke alle brugere har cookies enabled...
hvis du for alt i verden ikke gider at se på sessionid\'et i urlen kan du bare lave et frame set..
ljweb:> Ser effektivt nok ud, men nu er systemet lavet med sessions og jeg ooorker ikke at lave det om da jeg MEGET gerne snart vil have det op (PHP vers. af FOTX)
så slåes transient session id\'s fra. Og dermed tilføje php ikke PHPSESSID til de relative links.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.