Russian Qt Forum
Сентябрь 21, 2024, 12:51 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Загрузка файла на сервер  (Прочитано 4142 раз)
edwardoid
Гость
« : Январь 01, 2009, 23:10 »

Как загрузить файл на сервер, чтобы загрузив файл на сервак там запускался бы php файл, который далее работал бы с ним?
Сколько не пробовал через QHttp нифига не получилось. ЧИтал похожую тему на форуме, пробовал использовать код с форума - не помогло. Не могли бы вы мне объяснить?
Записан
merke
Гость
« Ответ #1 : Январь 30, 2010, 09:51 »

Здравствуйте!
Тут решение может быть следующее, опишу вкратце алгоритм аплода файлов на сервер.
Для этого потребуется специально написанный пыхпых скрипт, который будет блоками формировать передаваемый файл. Программа клиент будет коннектится к серверу и отправлять файл по кускам в заголовке запроса, пхп скрипт будет принимать и обрабатывать эти заголовки, формируя файл, до того пока не получит сигнатуру конца файла. Общение клиента с пхп скриптом организуется по средством передачи заголовков.

Вот накидал простой пример, реализуемый через QHttp

QString hed = QString("//какой то скрипт");
QString hl = QString("ACT=START");//Зарезервированная команда передаваемая скрипту, например сигнатура начала передачи
QByteArray ba("ACT=START");
QHttpRequestHeader header = QHttpRequestHeader("POST", hed,1,1);
header.setValue("Accept", "*/*");
header.setValue("Content-Type", "application/x-www-form-urlencoded");
 header.setValue("Host", "www.какой то сайт");
header.setValue("Content-Length", QString(ba.length()));
header.setValue("Accept-Charset", "cp-1251");
header.setValue("Connection", "Keep-Alive");
http->setHost("www.какой то сайт");
http->request(header,ba);
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.094 секунд. Запросов: 20.