When faced with this problem I tried the following (works)

The top section of PHP code just reads the POST return array
and plops it into a series of successive _SESSION vars

Included is a FORM to use that shows the simple code at work


================ Tested =================

//echo "<HR>List the _POST key/val pairs<P>";

// Try to cycle though the _POST vars
// and use them as input to creating _SESSION vars

//echo "_name_ <b>".stripslashes($k)."</b> _value_ <b>".stripslashes($v)."</b><br>";

// easy way to peek at the contents of what we just did

echo "<hr>print_r of the \$_SESSION array<P>";
echo "<hr>";
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">


<b><u>Is our _SESSION here?</u></b>
<Table width=60% border=1 cellspacing=0 cellpadding=5>
echo "<TR><TD>".stripslashes($k)."</TD><TD>".stripslashes($v)."</TD></TR>";
<form action=<?=$PHP_SELF?> method=POST>
key <input type="text" name="key" value='KeyOne' size="15" maxlength="25"> -- value <input type="text" name="value" value='ValueOne' size="30" maxlength="80">
Name: <input type='text' name='name' value="Tim O'Toole " size='12'> -- Address: <input type='text' name='address' value='123 Main Street'>
<input NAME=action type=submit value="Submit">

John Taylor-Johnston wrote:
Jason wrote:
RTFM again.

Jason, again, I RTFM, but did not get it working.
Otherwise I wouldn't have dared ask a question.

Sessions depends on a number of factors
including your version of PHP and the setting of register_globals.

The FM manual says:

"$_SESSION (or $HTTP_SESSION_VARS with PHP 4.0.6 or less) is recommended"

So I am using "PHP Version 4.1.2" (and "4.2.3" on my localhost to test offline)

Ok. I quit using $HTTP_POST_VARS["familyname"].

With a little rethinking, I have this working, I hope.

Now ... is there a cleaner way to assign my variable "familyname"?

Pseudo code:

if _post["familyname"] exists set session variable
                 (no sense in setting it until I post it)
if _session["familyname"] exists, $familyname = $_SESSION["familyname"];

I'll have about 30 variables. Going to be alot of lines. There must be an easier, cleaner way?


if (isset($_POST["familyname"]))
$familyname = $_POST["familyname"];
echo "Yay: \$familyname= $familyname<br>";

if (isset($_SESSION["familyname"]))
$familyname = $_SESSION["familyname"];
echo "yay session works, \$familyname= $familyname<br>";

PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to