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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: fialed to open stream

Сообщения:  [1-10]   [11-14] 

 
 автор: sima   (23.01.2007 в 10:29)   письмо автору
 
   для: Trianon   (22.01.2007 в 18:10)
 

PHP Version 4.3.9

CURL support enabled
CURL Information libcurl/7.10.5 OpenSSL/0.9.7d ipv6 zlib/1.1.4

Sockets Support enabled
--------------------------------------------------------
это строки полученные с помощью функции phpinfo() с сервера хостера. По крайней мере можно сделать вывод, что они включены, а как они работают - это под вопросом. И для всех ли они работают?!

   
 
 автор: Pit0n   (23.01.2007 в 08:48)   письмо автору
 
   для: sima   (23.01.2007 в 07:25)
 

По крайней мере у меня только так получилось сохранить страницу, а было бы конечно удобней сразу сохранять страницу в массив, подобно file(); А приходиться сначала сохранять в текстовой файл, а потом его разбивать на массив.
На счет хостинга: скорее всего функции там отключены, ведь он бесплатный. У меня в недавнем случае отлично работало на платной хостинге.

   
 
 автор: sima   (23.01.2007 в 07:25)   письмо автору
 
   для: Trianon   (22.01.2007 в 18:10)
 

Использовал также функцию fsockopen, результат:

fsockopen(): unable to connect to www.ya.ru:80 in /home/f/ftclan.h17.ru/cgi/to.php on line 11

Такое ощущение, что он вообще не хочет ни чего открывать. Такое может быть в настройках сервера??? Мой хостер: http://www.holm.ru/

   
 
 автор: sima   (23.01.2007 в 07:03)   письмо автору
 
   для: Trianon   (22.01.2007 в 18:10)
 


<?php 
        $ch 
curl_init("http://www.rambler.ru/"); 
    
$fp fopen("log.txt""w"); 

    
curl_setopt($chCURLOPT_FILE$fp); 
    
curl_setopt($chCURLOPT_HEADER0); 

    
curl_exec($ch); echo curl_error($ch);
    
curl_close($ch); 
    
fclose($fp); 

?> 


Выдает ошибку такую: Failed connect to www.rambler.ru: 13

За ссылку спасибо, довольно информативная, хотя общий принцип еще не очень понятен. Получается так:
в $ch - мы указывем на то, что инициируем cURL;
в setopt показываем, что делать с этим сеансом;
exec - все это дело выполняет.

То есть с самим файлом мы дело не имеем, а только с сылкой на него. А чтобы получить файл его надо обязательно скачать, например функцией CURLOPT_FILE.

Все так, примерно ) ?

   
 
 автор: Pit0n   (23.01.2007 в 03:33)   письмо автору
 
   для: sima   (23.01.2007 в 01:53)
 

Дело в том, что в $ch содержится не сам текст страницы а его аргументом для функции curl_setopt
Тут описание функции и параметров: http://www.php.ru/manual/ref.curl.html.

   
 
 автор: sima   (23.01.2007 в 01:53)   письмо автору
 
   для: Trianon   (22.01.2007 в 18:10)
 

Этим я и хотел заняться с утричка )).

Запись хавается, все норм, пишет -читает. А вот с cURL пока не понятно. Переменная $ch создается. (Пишет Resourse id#1).

Но вот писать отказывается. Может быть такое, что хостер запретил запись с удаленного источника??

   
 
 автор: Trianon   (22.01.2007 в 18:10)   письмо автору
 
   для: sima   (22.01.2007 в 17:58)
 

отделите мух от котлет.
Проверьте отдельным скриптом запись в файл некоторого текста.
И другим скриптом чтение через curl.

   
 
 автор: sima   (22.01.2007 в 17:58)   письмо автору
 
   для: Pit0n   (22.01.2007 в 13:48)
 

Че-то траблы за траблой...

Опять на localhost все нормально, считывает, записывает (библиотеку поставил). На сервере не хочет, точнее скрипт выполняется без ошибок (в браузере по крайней мере он ничего не пишет), файл создает, а вот информацию туда не пишет (хотя возможно и писать-то нечего, если не считывает функцией curl_init()???

Сначала думал с правами что-то, менял подставлял, но нет даже на 777 не хочет писать (

cURL на хостере точно есть, проверял.

   
 
 автор: Pit0n   (22.01.2007 в 13:48)   письмо автору
 
   для: sima   (22.01.2007 в 11:35)
 

Вот реальный пример, как записать всю страницу в файл, только что попробовал на хостинге , где отключены все вышеуказанные функции:


<?php
        $ch 
curl_init("http://www.rambler.ru/");
    
$fp fopen("log.txt""w");

    
curl_setopt($chCURLOPT_FILE$fp);
    
curl_setopt($chCURLOPT_HEADER0);

    
curl_exec($ch);
    
curl_close($ch);
    
fclose($fp);

?>


В итого вся страница записывается в файл.

   
 
 автор: sima   (22.01.2007 в 11:35)   письмо автору
 
   для: sima   (22.01.2007 в 03:37)
 

Читал-читал про этот CURL так пока толком ничего не понял (.

$ch = curl_init("adress");

1) это означает, что "налаживается связь" с файлом?

$result=curl_exec($ch);

2) Это означает, что все содержимое файла передается переменной $result?

   

Сообщения:  [1-10]   [11-14] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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