html form upload file using browse

Posted on 2008-06-17
Last Modified: 2011-09-20
I have a long form that allows a user to upload an image.

There is a lot of validation required and if a users input does not validate an error message is printed and the form is refreshed with all the input entered so far.

So far so good.

the input in the upload image 'browse' is lost when the form is refreshed.

Where can I find this info so I can reprint what was previously entered?
Question by:rwhubbard996
  • 4
  • 2
  • 2
LVL 29

Expert Comment

ID: 21809197
You have no access to that information in any modern browser, sorry.  If you could access that directly you could upload ANY file from the user's computer without their permission.
LVL 36

Expert Comment

by:Loganathan Natarajan
ID: 21811389
Yes, it is too complex to do that on this condition. better try to use AJAX to avoid the page refresh OR when you submit try to upload the files and display them near the control it is uploaded ... facility to remove / confirm to upload ... something like,.,
LVL 36

Expert Comment

by:Loganathan Natarajan
ID: 21811392
>> Where can I find this info so I can reprint what was previously entered?

you cannot reprint to the control ., but you can get the value / name selected the files and display them
LVL 29

Expert Comment

ID: 21813713
Or do an initial validation in JavaScript before your server side checks.

Also watch out for echoing user input back to the your form for XSS.
DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.


Author Comment

ID: 21814758
I was trying to be so clear with my question, sorry not sure I was.

I haven't used the 'browse'  function before and feeling the pressure of a deadline posted the question hoping for a simple solution.

Now at the start of the day and after reading the comments I started thinking (always good for a developer to think :-) ).

The 'browse' is a javascript function? I'm, thinking it must be a client side script of some sort to see the users files.  The information that gets printed in the window, the file name and path, is partially visible in the $_FILE array.  I can access the file name but not the path.

Right now I'm not in a position to dissect the inner workings of this function.  

My guess is if I can grab the path and file name I can put it back in the text field of the form so the user doesn't  have to enter it again.

After reading the comments I'm doubting my 'guess'.  The client server divide may prevent what seemed simple at first glance.

Any further clarification would be appreciated.

LVL 29

Accepted Solution

rdivilbiss earned 500 total points
ID: 21815551
If you look at the data from a for upload (say using Live HTTP Headers for FF) you'll see the name-value pairs passed in clear text followed by a form multipart line, then the BASE64 encoded contents of the file the user chose to upload via your form.

You'll get the filename as well.

From the aspect of manipulating what is displayed on the user's browser, you can use script to manipulate nearly every aspect of the page "EXCEPT" a file control.  It isn't that you cant see the filename once it is uploaded, but you have no way of filling a file field with any data, even if your purpose is simply to redisplay what the user already chose.

That is the protocol for the file field as specified by the W3C and is how all browsers implemented the field.
LVL 29

Expert Comment

ID: 21815606

Author Closing Comment

ID: 31468170
Thanks, that really clarifies the issue!

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Windows Tool to Build Android and iOS App 3 53
Wrapper for APPs 9 35
Standard for Web Development 3 27
Excel Hyperlink Question 4 30
I've been asked to discuss some of the UX activities that I'm using with my team. Here I will share some details about how we approach UX projects.
"In order to have an organized way for empathy mapping, we rely on a psychological model and trying to model it in a simple way, so we will split the board to three section for each persona and a scenario and try to see what those personas would Do,…
The viewer will learn how to count occurrences of each item in an array.
Learn how to set-up PayPal payment integration in your Wufoo form. Allow your users to remit payment through PayPal upon completion of your online form. This is helpful for collecting membership payments, customer payments, donations, and more.

910 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

23 Experts available now in Live!

Get 1:1 Help Now