Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> считывание файла с сайта с последующей записью 
:(
    Опции темы
supervladislav
Дата 28.12.2011, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



Скажите пожалуйста есть скрипт ,который переливает jpeg файлы с одного сайта на другой подскажите почему может не происходить
считывание ,файл существует ,проверял , если просто ввести его в  fopen он считывается  ,но скрипт всёвремя пишет мне 
failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in  
с чем это может быть связано )))

Код

$fp = fopen("http://adress/photo/".$data,"r");



Код

chdir(/home/path/www/);
$fp = fopen("http://adress/photo/".$data,"r");

        $fl = fopen("pics/".$data,"w");

        $fl2 = fopen($relative_barbos."pics/".$data,"w");

        
        while (true) {
     
          $datas = fread($fp, 4096);
         
#          print strlen($datas)."=";

          if (strlen($datas) == 0) { break; }

          fputs($fl,$datas);

          fputs($fl2,$datas);

        }

        fclose($fp);

        fclose($fl);

        fclose($fl2);


Это сообщение отредактировал(а) supervladislav - 28.12.2011, 21:15
PM MAIL   Вверх
$дмитрий
Дата 28.12.2011, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 19.6.2004

Репутация: 17
Всего: 45



Запрашиваемый файл точно существует. Прям 100% ? А почему отсутствует флаг b?
Я обычно файлы дергаю через сокеты, подобных проблем нет
PM MAIL   Вверх
supervladislav
Дата 28.12.2011, 21:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



$дмитрий, флаг b только при считывании???
Непонимаю как раньше работало ???

Добавлено через 8 минут и 25 секунд
$дмитрий, поставил - непомогло
PM MAIL   Вверх
$дмитрий
Дата 29.12.2011, 08:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 19.6.2004

Репутация: 17
Всего: 45



Тебе проще скопировать файлы в ручную
PM MAIL   Вверх
s0lman
Дата 29.12.2011, 10:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Белый и лохматый
**


Профиль
Группа: Участник
Сообщений: 637
Регистрация: 1.11.2007
Где: Ukraine

Репутация: 9
Всего: 29



В пхп установлена опция allow_url_fopen ?


--------------------
Когда я уже выучусь на волшебника? :(
PM   Вверх
supervladislav
Дата 29.12.2011, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



$дмитрий, так в том то и дело ,что не проще )))
PM MAIL   Вверх
supervladislav
Дата 29.12.2011, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



s0lman, она включена в On ,остальные то сценарии работают.
Включил настройку  в .htaccess файле . 



PM MAIL   Вверх
supervladislav
Дата 29.12.2011, 14:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



Народ минутку сама загрузка файлов работает ,я загружаю файл такой же командой точно такойже ,
но когда речь идёт о сценарии ,то мне на вполне существующий файл который грузится  точно через такую функцию fopen 
отвечает мне вот так http
HTTP/1.1 404 Not Found 
PM MAIL   Вверх
$дмитрий
Дата 29.12.2011, 15:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 19.6.2004

Репутация: 17
Всего: 45



Цитата

сама загрузка файлов работает

Так а в чем проблема?
PM MAIL   Вверх
supervladislav
Дата 29.12.2011, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



$дмитрий, проблема в том ,что если я делаю вот так
 
Код

$link=fopen("http://adress/photo/150_1030_17311.jpg","rb");
while($data1=fread($link,4096)){
echo $data1;
fclose($link);
}


мне в echo выдаётся каляка моляка 
,когда я в свой скрипт добавляю 

Код

var_dump($datas);

там выдаётся false 

Это сообщение отредактировал(а) supervladislav - 29.12.2011, 16:24
PM MAIL   Вверх
supervladislav
Дата 29.12.2011, 18:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



$дмитрий,проблема в том ,что сценарий выполняется только вот до этого места 
Код

  if ($data<>"_") {
  $fp = fopen("http://adress/photo/".$data,"r");

в переменной $data есть название существующего файла ,в настройках всё что надо Для загрузки файла через fopen  прописано  ,а дальше сценарий не находит файл.
Файл загружается в случае если его просто прописать в fopen.
Если из скрипта выводит вот это:
Пишет вот это failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /home/u26156/arenda-spbru/www/db_photo.php on line 78





Код

foreach ($tables as $type=>$table) {

    $mysql = "SELECT * from $table where strPhotoIndex='_' or strPhotoIndex=' '  LIMIT 10;";

    $res = mysql_query($mysql);
    
    while ($row = mysql_fetch_array($res,MYSQL_ASSOC)) {
    
      $result = true;

      $total++;

      $recordid = $row['RecordID'];
     
     
      if (($fp = fopen("http://adress/import_photo.php?type=".$type."&id=".$recordid,"r")) === false) die();

      $data = fread($fp, 4096);

      fclose($fp);




      if ($data<>"_") {
      
    
      

        $fp = fopen("http://adress/photo/".$data,"r");

        $fl = fopen("pics/".$data,"w");

        $fl2 = fopen($relative_barbos."pics/".$data,"w");



        while (true) {

          $datas = fread($fp, 4096);

#          print strlen($datas)."=";

          if (strlen($datas) == 0) { break; }

          fputs($fl,$datas);

          fputs($fl2,$datas);

        }

        fclose($fp);

        fclose($fl);

        fclose($fl2);



        list($width, $height) = getimagesize("pics/".$data);

        $newwidth = 211;

        $newheight = ($height/$width)*$newwidth;

        $source = imagecreatefromjpeg("pics/".$data);

        if ( $newwidth == $width &&  $newheight == $height) {

          $result = imagejpeg($source,"pics/".substr_replace($data, 'T', 0, 1));

          $result &= imagejpeg($source,$relative_barbos."pics/".substr_replace($data, 'T', 0, 1));

        } else {

         $thumb = imagecreatetruecolor($newwidth, $newheight);

          $result = imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

          $result &= imagejpeg($thumb,"pics/".substr_replace($data, 'T', 0, 1));

          $result &= imagejpeg($source,$relative_barbos."pics/".substr_replace($data, 'T', 0, 1));

        }

      }
if($data<>"_" or $data<>" "){
      $mysql = "UPDATE $table set strPhotoIndex='".$data."' WHERE RecordID=".$row['RecordID'];

      $message.=$mysql."\n";

      if ($result) {

        $res0 = mysql_query($mysql);

      } else {

        $message.="ERROR RESIZING ".$data." FOR ID=".$row['RecordID']." !!\n";

        if ($errors++>5) break 2;



      }}

      if (array_key_exists('count',$_GET)) {

        if ($total>=$_GET['count']) {

          print "<pre>".$message."</pre>";

          die();

        }

      }

    }

  }

$дмитрий, 
PM MAIL   Вверх
$дмитрий
Дата 29.12.2011, 19:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 19.6.2004

Репутация: 17
Всего: 45



Цитата

в переменной $data есть название существующего файла

Откуда такая уверенность?
PM MAIL   Вверх
supervladislav
Дата 29.12.2011, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



$дмитрий, проверял через var_dump
PM MAIL   Вверх
$дмитрий
Дата 29.12.2011, 22:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 19.6.2004

Репутация: 17
Всего: 45



Код

echo "http://adress/photo/".$data;


Что выводит?
PM MAIL   Вверх
supervladislav
Дата 30.12.2011, 01:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


///\\\///\\\///\\\
***


Профиль
Группа: Завсегдатай
Сообщений: 1771
Регистрация: 18.5.2006

Репутация: -8
Всего: -9



$дмитрий, вот это  выводит ну все остальные ошибки связанные с тем ,что связаны с линком.
Warning: fopen(http://adress/photo/637_14269_16033.jpg ) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in 


Это сообщение отредактировал(а) supervladislav - 30.12.2011, 02:03
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0569 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.