Проблем с file_get_contents

sentenello

Registered
Здравейте.
Вземам информация от един сайт, но от 2 дни кода ми не иска да работи. Там от където вземам информацията не са променяли нищо.

Ето я грешката която ми изкарва.

Код:
Warning: file_get_contents(http://www.saita.com/) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 500 Internal Server Error
in /home/progn0zi/public_html/moqsait.com/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()’d code on line 23

На този ред в runtime.php се намира ето този код

Код:
function ExecPhp_Runtime(&$cache)
	{
		$this->m_cache =& $cache;
 
От друг сайт работи. Но проблема е, че ми трябва точно този :D, а не знам от какво се е получило така, че да дава тази грешка
 
sentenello каза:
От друг сайт работи. Но проблема е, че ми трябва точно този :D, а не знам от какво се е получило така, че да дава тази грешка

Защо не пробваш да вземеш информацията с curl ?

PHP:
$get= curl_init();
  curl_setopt($get, CURLOPT_URL, "http://saita.com");
  curl_setopt($get, CURLOPT_HEADER, 0)or die("error CURLOPT_HEADER"); 
  curl_setopt($get, CURLOPT_RETURNTRANSFER, true)or die("error CURLOPT_RETURNTRANSFER");
  curl_setopt($get, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible;)")or die("error CURLOPT_USERAGENT");
  $info = curl_exec($get);
  curl_close($get);
echo $info; // izvejda informaciqta wzeta ot saita
 
Проблема е че никога не съм работил с curl и не знам как да си направя кода да е както искам аз. Например да променям някой полета или дадена информация.

Нямаш ли някаква представа защо се получава проблема който имам в момента?
 
sentenello каза:
Проблема е че никога не съм работил с curl и не знам как да си направя кода да е както искам аз. Например да променям някой полета или дадена информация.

Нямаш ли някаква представа защо се получава проблема който имам в момента?

Какво разбираш под полета при взимане на информация? Дадох ти пример как вместо file_get_contents да използваш curl. Резултата е един и същ. После вече ако желаеш да вземеш даден елемент може да използваш explode()
 
Тъй като идея си нямам как да го направя с curl се поразрових за тази грешка и в един форум намерих това решение.

Замених
Код:
$url="example.com";
$string = file_get_contents($url);
с
Код:
$optss = array('http'=>array('header' => "User-Agent:MyAgent/1.0\r\n"));
$contexst = stream_context_create($optss);
$string = file_get_contents('example.com',false,$contexst);

Не знам защо, но този код проработи, с един проблем който е, че когато рефрешна дадената страница не винаги ми изкарва информацията. Има моменти в които изкарва бяла страница.

Някакви идеи ?

П.С. В първия си пост съм написал че проблема е в рънтайм.пхп, но съм се объркал. Целия проблем идва от
Код:
 file_get_contents($url)
 

Back
Горе