We help IT Professionals succeed at work.

popup to upload file and set session values?

pillmill
pillmill asked
on
I would like to use a popup to upload a file and then to also
set $_SESSION values. These values should be saved after the
popup closes so that they can be used to fill fields in the main page.
The  popup, below, is not saving the $_SESSION values.
How can this be fixed?

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>

 <?php
 if(!empty($_FILES) ){
$_SESSION['name']=$_FILES['in_file']['name'];  
echo  $_SESSION['name']; //for testing
}
?>  
   
</head>

<body>

<script language="javascript" type="text/javascript">

function popitup(url) {
      newwindow=window.open(url,'name','height=200,width=150');
      if (window.focus) {newwindow.focus()}
      return false;
}

</script>

<input type="file" name="in_file" id="in_file">
<input type="submit" name="submit">

</body>
</html>
Comment
Watch Question

Chris Harte2015 Top Expert (Most Article Points)
CERTIFIED EXPERT

Commented:
Even though it is a popup, it is still a separate page. You need to include the function session_start() as the first line of php in every page.

http://uk3.php.net/manual/en/function.session-start.php
Most Valuable Expert 2011
Top Expert 2016
Commented:
This script will not work, even if you put session_start() at the top of the PHP because it has the HTML wrapper above the start-PHP statement. That creates browser output.  Browser output cannot come before cookies.  The session handler uses cookies. Thud.

Can you describe your question in non-technical terms?  It seems like there may be a standard design pattern that will meet your needs, but it's kind of hard to understand from what I have seen so far.

Thanks and regards, ~Ray

Explore More ContentExplore courses, solutions, and other research materials related to this topic.