| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Сети > idHTTP - POST |
| Автор: iddqd 30.1.2006, 17:46 |
| Необходимо в POST запросе передать картинку скрипту. Помогите пожалуйста реализовать, а то уже долго бьюсь. http://imageshack.us/ хотелось бы передать сюда картинку и получить URL на который перекидывает при успешной заливке, а в идеале ссылку отсюда: Direct link to image |
| Автор: Snowy 30.1.2006, 17:50 | ||
Используй вариант
Для отправки POST данных используй TIdMultiPartFormDataStream. Туда можно добавлять данные разных типов, в том числе и картинки. |
| Автор: iddqd 30.1.2006, 18:25 | ||
По нажатию на кнопку пишу код:
Не работает. Подскажите пожалуйста, как сделать правильно и чтоб получить ссылку на страницу, куда перенаправляет после успешной загрузки картинки. |
| Автор: iddqd 30.1.2006, 20:58 |
| Snowy, спасибо большое. там надо было ещё немного одбавить кода, чтоб получить конкретно то, что я хочу, но всё получилось в итоге. |
| Автор: Rodman 24.9.2006, 22:21 |
| Скажите, а если я хочу на свой хост кинуть файл... то мне необходимо наваять свой php-файл, который будет принимать файл... или он сам формируется.. Не пойму??? |
| Автор: Snowy 25.9.2006, 09:24 |
| Сам он никак не формируется - нужно писать принимающий скрипт, который и будет решать, что с этим файлом делать. |
| Автор: Rodman 25.9.2006, 12:41 | ||
| Вот не задача.... Подскажите, пожалуйста, простейший скрипт на PHP... чтобы подходил под этот метод
В PHP ничего не отсреливаю.... Заранее благодарен |
| Автор: Snowy 25.9.2006, 12:59 |
| Ну так поищи в разделе по PHP. Хотя даже и искать долго не нужно - FAQ: http://vingrad.ru/PHP-PHPSCRIPTS-002361 |
| Автор: Matematik 25.9.2006, 13:03 | ||
В PHP доступ к загружаемым файлам через массив $_FILES
Добавлено @ 13:05 Только к твоему вопросу это не имеет никакого отношения. Тебе надо сформировать post запрос на http сервер imageshack, и распарсить html ответ. Для начала научись правильно отправлять |
| Автор: Rodman 25.9.2006, 13:14 |
| Как бы понимаешь... Мне как бы PHP и не нужен был пока не требовалось загрузку картинки сделать... Просто на сколько я знаю от своих знакомых, upload не такая простая вешь... Так что пока разберусь, могу не успеть додела... вот и прошу простейший пример, чтобы подошел к вышеуказанному коду... Добавлено @ 13:15 Просто знающие должны знать как это делается... |
| Автор: Snowy 25.9.2006, 13:29 |
| Если PHP не устраивает - загружай по ftp. Если не устраивает ftp - PHP или Perl. А пример тебе уже дали... |
| Автор: Rodman 25.9.2006, 13:41 | ||
вот эти слова и подвигнули меня на мысль, пример не совсем то что мне нужно...
Что значит распарсить??? |
| Автор: Snowy 25.9.2006, 13:45 |
| Анализировать полученную страницу и вытащить из неё нужные данные. |
| Автор: Rodman 25.9.2006, 14:12 | ||||
| ОК... А куда кинуть этот php??? В cgi-bin??? Добавлено @ 14:18 Я вот написал...
и когда компилю выдает
как настроить IdHttp??? |
| Автор: Matematik 25.9.2006, 14:19 |
в корневой каталог ХТТП сервера |
| Автор: Snowy 25.9.2006, 14:19 |
| Rodman, эти вопросы не в этот раздел. Это раздел по дельфи, а не по php и хостинге! Данные вопросы уже выходят за рамки обсуждаемой темы. Добавлено @ 14:20 При дальнейшем оффтопе - закрою тему. |
| Автор: Rodman 25.9.2006, 15:07 |
| Хорошо.... |
| Автор: CLIPSA 27.2.2007, 23:05 | ||||
Как сформировать post к этому PHP скрипту? Что именно нужно написать чтоб вызвать этот скрипт и загрузить файл? Например файл находится C:\file.txt |
| Автор: Matematik 28.2.2007, 01:12 | ||||
| Пример для ImagesHack. Когда жмешь в ImagesHack кнопку "upload it!" браузер посылает серверу это
В Delphi это выглядит так.
.Post возвращяет HTML текст со ссылкой на загруженную картинку |
| Автор: Lence 11.4.2007, 19:06 | ||||||
Вот мой код
Но мне постоянно S возвращает сообщение, что я ввел не верный код картинки вот что посылает прога
а вот что посылает браузер
в чем косяки ??? почему у меня ссесия не валидна все время ? хотя я сравнивал и гет и пост на равенство ссесий - все отлично, а при передачи неравно :( и говорит что код картинки не верно ввел ... |
| Автор: _hunter 11.4.2007, 19:22 |
| а ты уверен что посылаеш правильный код? -- картинка-то постоянно меняется... |
| Автор: pave 11.4.2007, 19:26 |
| можно добавить в начале кода чтото вроде: http1.Request.ContentType := (из MultiPart.ContentType ) http1.Request.ContentLength := (из MultiPart.Size ) http1.AllowCookie := true |
| Автор: Lence 12.4.2007, 14:47 | ||||
Это все стоит правильно и картинку тоже ввожу верно. Вначале я запрашиваю сраничку Get'ом - парсю ее выдераю ссылку до картинке - вытягиваю картинку и показываю ее в проге - потом все поля передаю POST'ом все обратно ... и полученая страница пишет что Ошибка в коде проверки :( меня смущают следующие неравенства в отпраке запроса Браузер передает в заголовке еще :
этого в порге у меня не передается. Незнаю как добавить эти параметры в проге. А еще POST в проге пишет POST / HTTP/1.0 хотя браузер показывает POST / HTTP/1.1 ... POST / HTTP/1.0 - поддерживает закачку файлов ? как сделать, чтоб прога посылала POST / HTTP/1.1 хотя я указываю http1.ProtocolVersion:= pv1_1; В этом ли косяк ? |
| Автор: Lence 16.4.2007, 22:31 |
| Никто не знает в чем проблема ??? |
| Автор: aktuba 17.4.2007, 08:05 | ||
Попробуй добавить такие строки в заголовок. Request.Headers вроде, точно не помню... |
| Автор: Dima85 19.7.2007, 11:51 | ||
А как вам удалось вывести адрес картинки? Расскажите пожалуйста. |