фонарик, если решение через форму и FRAME не подходит, то можно через HTML5 Files API, как написал выше
Poznakomlus. Об этом также подробно написано тут:
HTML5 Files API - чтение файлов
А можно ещё через Form Data. Об этом довольно подробно написано тут:
Особенности загрузки файлов на HTML5
Tам также описано как это всё на сервер отправить через AJAX.post - смотри конец статьи.
Кстати, у тебя неправильно ответ AJAX обрабатывается. Надо исправить на это:
if(request.readyState == 4)
{
if(request.status == 200)
{
//............