i am going nuts = new session id just will not work

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • windandwaves

    #1

    i am going nuts = new session id just will not work

    Hi

    I have the following file:

    --myfile.php
    <?php
    if($s) {
    echo $s;
    session_id($s);
    session_start;
    echo 'your account has been loaded, <a
    href="index.php ?PHPSESSID='.se ssion_id().'">c ontinue</a>.';
    }
    ?>

    I run it like this: myfile.php?s=ab c

    It does not matter how many times I load it, whenever I load my test file:

    ---test.php
    <?php
    session_start() ;
    echo session_id()
    ?>

    The same old session ID comes back (definitely not abc or any other
    parameter that I pass using s). Having said that, in the link to index.php,
    it provides the new session ID, but as soon as I reload the page, we are
    back to normal.

    The ONLY way to delete this old session ID is to delete the cookie from my
    computer.

    What am I doing wrong. It is driving me nuts!

    TIA

    - Nicolaas



  • Geoff Berrow

    #2
    Re: i am going nuts = new session id just will not work

    Message-ID: <hV6wf.13488$vH 5.695085@news.x tra.co.nz> from windandwaves
    contained the following:
    [color=blue]
    >The same old session ID comes back (definitely not abc or any other
    >parameter that I pass using s). Having said that, in the link to index.php,
    >it provides the new session ID, but as soon as I reload the page, we are
    >back to normal.[/color]

    What are you trying to do?

    The session id will stay the same as long as the browser is open (within
    the garbage collection time)

    The session id serves as a reference to session variables which are
    stored on the server. Therefore it is vitally important that it does
    stay the same.

    As you've found out the session id is stored in a cookie. You only have
    to pass it by URL if you expect cookies to be turned off. Since the
    cookie is only a memory cookie, most of the time you will be ok. If in
    doubt you have to pass the session id or have it automatically enabled
    on the server. The session id is available as a constant SID

    If you want to store 'abc' by doing myfile.php?s=ab c

    <?php
    session_start() ;

    if(isset($_GET['s'])) {
    echo $_GET['s']."<br>";
    $_SESSION['s']=$_GET['s'];

    echo "your account has been loaded, <a
    href='index.php ?".strip_tags(S ID)."'>continue </a>.";
    }
    ?>
    You will find that the session id will not show unless cookies are
    disabled

    index.php must have session_start() as the first line
    $_SESSION['s'] will contain your variable 'abc'
    --
    Geoff Berrow 011000100110110 0010000000110
    001101101011011 001000110111101 100111001011
    100110001101101 111001011100111 010101101011

    Comment

    Working...