I'm running across an issue that neither myself nor a senior developer with the company for 7+ years can solve, so I'm hoping y'all can help. PHP is reporting that $_POST is empty after submitting a form. Though a majority of our users are on Windows XP with IE8, it's worth noting that this OS/Browser combination is the only one that is experiencing issues. Also, we have 125-150 uploads daily (mostly with IE8) and only 3-5 users experience an issue per week. One user I spoke to had successfully uploaded multiple documents in the past without issue and on the same computer, was unable to upload a document last week.
Has anyone else experienced problems with form submissions from IE8 not containing POST data?
Our company has an upload form loaded in a jQuery UI dialog for uploading multiple files, with a basic progress meter and a cancel button. The code is long and scattered in several files, which is why I'm choosing not to copy/paste it at this moment, but I'll do my best to illustrate in brief.
<div id="dialog_div">
<div id="form_container">
<form>
</form>
</div>
<div id="progress_div">
</div>
</div>
The form has five file inputs and a submit button that's initially disabled and only enabled when one or more files have been selected. The progress div is hidden and the form is shown, then on submit, the form is hidden and the progress div is displayed. Using a setTimeout(), the progress div is refreshed every two seconds to show percent uploaded as well as including a cancel button. We're using PHP's session upload progress to track the upload and check that it doesn't exceed a maximum size. If it does exceed the maximum size, the XHR is aborted on the client side. Clicking the cancel button runs the same JS function that is used to abort uploads of files that are too large. When the cancel button is clicked, the PHP script that receives the form is never executed, so nothing shows up in our error logs. The upload could also be aborted if our progress script doesn't find session data about the upload within 20 seconds.
The confusing part is that the PHP script that receives the form is generating an error in our logs that amounts to "No form received" because $_POST is empty. The files that users are having an issue with are NOT too large and our staff was able to do the uploads for them with the same files and through the same interface. When the cancel button is clicked, the script never executes, so we don't think it's a problem with the upload being aborted.
Ideas from the community?