Jump to content

use custom string as session id


Jim from Oakland

Recommended Posts

This is MOSTLY a session question but I'm using ajax...

I was able to hack ajax so that I can cycle through separate survey questions individually and retrieve user responses (in the ajax request processor) using post variables.

But, I need to keep track of the responses for all questions as they are submitted. I send the form's unique id (as a post variable) each time a question is submitted and want to use that string (letters and numbers only so it should be a vaild session id) to specify/identify a session.

So, in the script that processes the ajax request for each question how do I use the string in $_POST['Ref'] to reinstate a session?
Link to comment
https://forums.phpfreaks.com/topic/30446-use-custom-string-as-session-id/
Share on other sites

Thanks btherl and sorry for convolution.

Hows this: I need to use a string that I create to specify a session, rather than letting php name the session. The string will be in variable $_POST['Ref']

example, $_POST['Ref'] contains '061212aq1'

How do I use that string to a) create a session with that name (id?) then b) access that session once it is created.

I do not know the difference beteen session ID and session NAME.

I've tried various combinations of

$sessionID = $_POST['Ref'];
session_name($sessionID);
session_id($sessionID);
session_start();

Darnitall! I get the same results you do.  BUT, when I fill the session array with name/value pairs the values do not seem to persist.
I use
$_SESSION[$itemToProcess][$elementIndex]['name']
= $_POST[$elementNameVarName];

$_SESSION[$itemToProcess][$elementIndex]['value']
= $_POST[$elementValueVarName];

and when using print_r on $_SESSION I see that it is filled but next time into the script (via ajax) none of the previously processed questions' name/value data is retrieved.

Ideas?
I tried sequentially named strings as keys for $_SESSION instead of the three dimension array approach and the session data was retrieved. Thanks. You did help me!

So, instead of

$itemIndex=2;
$elementIndex=3;

$_SESSION[$ItemIndex][$elementIndex]['name'] = 'red';

used
$_SESSION['item_' . $ItemIndex . 'element_' . $elementIndex . 'name'] = 'red';

Should the former approach work?

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.