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
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

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.

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

Are You Using the Best Web Development Editor?

The worlds of web hosting and web development are constantly evolving. Every year we see design trends change, coding standards adapt and new frameworks/CMS created. With such a quick pace of change it’s easy to get lost trying to keep up.

See if your editor made the list.

Question has a verified solution.

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

Because your company can’t afford for you to make SEO mistakes, you’ll want to ensure you’re taking the right steps each and every time you post a new piece of content. This list of optimization do’s and don’ts can help you become an SEO wizard.
When it comes to security, close monitoring is a must. According to WhiteHat Security annual report, a substantial number of all web applications are vulnerable always. Monitis offers a new product - fully-featured Website security monitoring and pr…
This tutorial demonstrates how to identify and create boundary or building outlines in Google Maps. In this example, I outline the boundaries of an enclosed skatepark within a community park.  Login to your Google Account, then  Google for "Google M…
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.

717 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