|  | Posted by alo.and on 12/10/06 12:18 
Hi Nico.
 >
 > <FORM METHOD="POST" ACTION="prova.php">
 > <b>Combination</b><br><br>
 > Element 1: <INPUT NAME="el1" TYPE="TEXT">
 > <BR>
 > Element 2: <INPUT NAME="el2" TYPE="TEXT">
 > <br>
 > <INPUT TYPE="SUBMIT" VALUE"Submit">
 > </FORM>
 > <br>
 > Combination<br><br>
 >
 > <?php
 >    session_start();
 >    $_SESSION['combinations'][] = ($_REQUEST["el1"].$_REQUEST["el2"]);
 >    print_r($_SESSION['combinations']);
 > ?>
 >
 
 First, session_start() must be called before any output if you use
 Cookie based sessions (the majority of PHP implementations use this
 configuration). See
 http://www.php.net/manual/en/function.session-start.php for more info.
 
 Then your script should be like this:
 
 ---file begin---
 <?php
 
 session_start();
 
 ?>
 <p>Do some output here. <?php echo "Other output here."; ?></p>
 <p>Etc.</p>
 <?php
 
 // Write something to the _SESSION array
 $_SESSION['something'] = "something that sould be saved in session";
 
 ?>
 ---file end---
 
 Doing that, your data contained in $_SESSION array will be saved
 between browser requests.
 
 > If I fill the two text fields, reload the page and then fill again the
 > two text fields, the new text overwrites the old one.
 
 If you just reload the page the browser will not send any data filled
 in forms. To do that you should submit your form, via input with
 type="submit" or type="image" or via document.formName.submit()
 javascript method.
 
 > I'd like that the array can include both the old and the new text.
 
 You're doing right in this statement:
 
 $_SESSION['combinations'][] = ($_REQUEST["el1"].$_REQUEST["el2"]);
 
 But it could be a bit better, you could save your form data in a more
 normalized way, like a form submit history, I guess you want to do
 something like that:
 
 $_SESSION['form_history'][] = $_REQUEST;
 
 So, to get the last form post, for example, you could do this way:
 
 $last_request = $_SESSION['form_history'][
 count($_SESSION['form_history']) - 1 ];
 print_r($last_request);
 echo "The last posted value of Element 1 was " .
 $last_request['el'];
 
 Note: the example statements was not tested.
 
 Hope I can help you!
  Navigation: [Reply to this message] |