uploading a file via ajax with php

It isn’t possible to submit a file through Javascript.

Your options are:

  • The hidden iframe trick, popularized by Google. Implementing this yourself can result in some klunky stuff so there are libraries out there, such as jQuery, which have plugins, such as jQuery’s popular Form Plugin, that automate this so you don’t have to feel dirty inside when using it.
  • Using Flash to faciliate the process. Most notably SWFUpload is very popular. All things being equal, I’d probably go with the Javascript solution over this, but I’ve used this in the past with success. The cool thing about this solution is that it comes with a nicer interface such as loading indicators and thumbnails and such. At this point, though, you’re asking for a user to have Flash + Javascript available, which may not work in some situations.
  • Using Silverlight instead of Flash, although I wouldn’t really consider this as a viable solution, as it has a much lower penetration rate than the other two solutions.

Leave a Comment