Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Получение удаленного изображения
 
 автор: slights   (17.09.2006 в 18:10)   письмо автору
 
 

Небходимо получить удаленное изображения генерирующися с помощью пхп скрипта - все было бы просто но не тут то было. Чтоб его получить необхдимо установить cookie с данными - и только тогда оно покажется. написал следующие

        $fp = pfsockopen($host, 80, $errno, $errstr, 300);
    $out = "GET /get_raw_img.php?id={$confirm_id} HTTP/1.1\r\n";
    $out .= "Host: {$host}\r\n";
    $out .= "Cookie: {$cookie_name}={$cookie_value};\r\n";
    
    $out .= "Cache-control: no-cache, no-store\r\n";
    $out .= "Content-Type: image/png\r\n";
    $out .= "Connection: Close\r\n\r\n";
    fputs($fp,$out);
    while (!feof($fp)){ $content.=fgets($fp); }
    fclose($fp);
    $tmp=explode("image/png\r\n\r\nf16\r\n",$content);
    file_put_contents("tmp.png",substr($tmp[1],0,-5));

данные есть - только вот почему то только первая строчка отображается
помогите плз. заранее спасибо

   
 
 автор: cheops   (17.09.2006 в 18:38)   письмо автору
 
   для: slights   (17.09.2006 в 18:10)
 

Первая, это какая?

   
 
 автор: slights   (17.09.2006 в 20:02)   письмо автору
 
   для: cheops   (17.09.2006 в 18:38)
 

всмысле первая строка изображения

   
 
 автор: cheops   (18.09.2006 в 11:18)   письмо автору
 
   для: slights   (17.09.2006 в 20:02)
 

Не очень понятно назначение вот этих строк
<?php
    $tmp
=explode("image/png\r\n\r\nf16\r\n",$content); 
    
file_put_contents("tmp.png",substr($tmp[1],0,-5));
?>

Вы что ими делаете?

   
 
 автор: slights   (20.09.2006 в 00:23)   письмо автору
 
   для: cheops   (18.09.2006 в 11:18)
 

при получении данных изображения с помощью сокета - в начале идет ответ сервера итд по ним эхплодю и отрезаю лишние символы в конце - чтоб получить чистые png. в этом и навеное и ошибка - но подругому получить изображение непридумывается чтото

   
 
 автор: slights   (20.09.2006 в 00:23)   письмо автору
 
   для: cheops   (18.09.2006 в 11:18)
 

при получении данных изображения с помощью сокета - в начале идет ответ сервера итд по ним эхплодю и отрезаю лишние символы в конце - чтоб получить чистые png. в этом и навеное и ошибка - но подругому получить изображение непридумывается чтото

   
 
 автор: cheops   (20.09.2006 в 12:29)   письмо автору
 
   для: slights   (20.09.2006 в 00:23)
 

Кстати, а почему изображение берётся сокетами, а не просто загружается файловой функцией file_get_contents()? Или вам обязательно нужно выставлять cookie?

   
 
 автор: slights   (20.09.2006 в 12:30)   письмо автору
 
   для: cheops   (20.09.2006 в 12:29)
 

да изображние возможно получить лишь указав куки

   
 
 автор: cheops   (20.09.2006 в 12:29)   письмо автору
 
   для: slights   (20.09.2006 в 00:23)
 

Ответ сервера может различаться раз от раза, но он всегда заканчивается двумя переводами строки \r\n\r\n - ориентироваться следует на них.

   
 
 автор: slights   (20.09.2006 в 12:36)   письмо автору
 
   для: cheops   (20.09.2006 в 12:29)
 

Так по ним и эксплодю.
Может есть еще какой способ загрузки изображения? сейчас скачал snoopy class попробую через него

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования