Чем заменить include

12
Astrol
На сайте с 23.09.2006
Offline
224
4510

Есть код системы thelink,

<?php
error_reporting(E_ERROR | E_USER_ERROR);
$murl = "http://".$HTTP_SERVER_VARS['HTTP_HOST'].$HTTP_SERVER_VARS['REQUEST_URI'];
include("http://www.thelink.ru/code/code.php4?mid=0000&murl=$murl&user_agent=".$HTTP_SERVER_VARS['HTTP_USER_AGENT']."&remote_addr=".$HTTP_SERVER_VARS['REMOTE_ADDR']);
?>

Но с недавнего времени он отказывается работать, т.к на хостинге отключили include. На хостинге посоветовать кроме замены include на file ничего не могут.

Как можно изменить код, чтобы он заработал? Заранее всем спасибо! ;)

Angelo
На сайте с 01.01.2007
Offline
125
#1

А <!--#include virtual--> не пробывали?

И что это за хостинг такой на котором не разрешен инклуд?

Astrol
На сайте с 23.09.2006
Offline
224
#2
Angelo:
А <!--#include virtual--> не пробывали?
И что это за хостинг такой на котором не разрешен инклуд?

Это вместо include надо вписать или как? И что за черточки такие?

Бесплатный хостинг.. вечно у них какие то проблемы!

edogs software
На сайте с 15.12.2005
Offline
775
#3
Astrol:
Есть код системы thelink,
Но с недавнего времени он отказывается работать, т.к на хостинге отключили include. На хостинге посоветовать кроме замены include на file ничего не могут.

Как можно изменить код, чтобы он заработал? Заранее всем спасибо! ;)

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

Попробуйте вместо инклуда

1) readfile("тут то что инклудом было");

2) echo file_get_contents("тут то что инклудом было");

или

2)

echo file_get_contentz("тут то что инклудом было");


function file_get_contentz ($link) {
$url_parts = @parse_url( $link );
$documentpath = $url_parts["path"];
$documentpath .= "?" . $url_parts["query"];
$host = $url_parts["host"];
$port = $url_parts["port"];
$fp = fsockopen( $host, 80, $errno, $errstr, 5 );
if(!$fp) return '';
fwrite ($fp, "GET ".$documentpath." HTTP/1.0\r\nHost: $host\r\n\r\n");
while(!feof($fp)) $fcon.=fgets($fp, 10024);
fclose($fp);
return $fcon;
}

Но т.к. Вы говорите что хостинг бесплатный, есть неслабый шанс что там в принципе перекрыли возможность коннекта к удалённым хостам, поэтому все вышеназванное может и не получиться. Советуем купить платный хостинг.

Разработка крупных и средних проектов. Можно с криптой. Разумные цены. Хорошее качество. Адекватный подход. Продаем lenovo legion в спб, дешевле магазинов, новые, запечатанные. Есть разные. skype: edogssoft
Supermakc
На сайте с 24.03.2006
Offline
82
#4

Angelo, это же SSH, а у человека PHP!

Astrol, попробуйте вместо include использовать require. А еще include_once, require_once

Ежедневно и бесплатно списки трастовых дроп доменов (http://dropdomains.pro)
Mihajlo
На сайте с 30.10.2006
Offline
156
#5

exec(file_get_contents($url));

Shtogrin
На сайте с 02.11.2006
Offline
95
#6
Mihajlo:
exec(file_get_contents($url));

Exec здесь никак не поможет, имелось ввиду eval? Мне аж страшно стало, что может произойти, если file_get_contents вернет, например rm -rf *

Supermakc:
Angelo, это же SSH, а у человека PHP!
Astrol, попробуйте вместо include использовать require. А еще include_once, require_once

В смысле SSI (Server Side Include)? Обычно если закрыт include, тогда закрыты и все родственные ему функции.

Astrol Если вам разрешили file и вы доверяете источнику

eval(implode('',file($url))); 

или
eval(file_get_contents($url)));
.

Можете также сохранить содержимое $url в локальный файл и сделать include

www.shtogrin.com (http://www.shtogrin.com/). Канцтовары (http://www.invit.com.ua/). 1С Бухгалтерия (http://account.kiev.ua/).
Astrol
На сайте с 23.09.2006
Offline
224
#7

Всем спасибо за советы!

У меня получилось вот как:

<?php
error_reporting(E_ERROR | E_USER_ERROR);
$murl = "http://".$HTTP_SERVER_VARS['HTTP_HOST'].$HTTP_SERVER_VARS['REQUEST_URI'];
readfile("http://www.thelink.ru/code/code.php4?mid=0000&murl=$murl&user_agent=".$HTTP_SERVER_VARS['HTTP_USER_AGENT']."&remote_addr=".$HTTP_SERVER_VARS['REMOTE_ADDR']);
?>

Вроде страничка стала открываться, похоже что работает!

edogs software
На сайте с 15.12.2005
Offline
775
#8

Тем кто советует eval, exec и прочее, хотелось бы отметить, что обычно код биржами отдается просто html, а не php (по крайней мере во всех что мы видели). Именно поэтому и не понятно, зачем предлагать пользоваться include и в принципе его выполнять.

Astrol
На сайте с 23.09.2006
Offline
224
#9

Не получилось! При переходе на разные странички под ссылками не переходит, а пишет "Нет такой странички".

Astrol
На сайте с 23.09.2006
Offline
224
#10

Пожалуйста с вышеуказанным мне кодом, попытайтесь составить рабочий.. тоесть уже полностью готовый код.. заранее спасибо всем! :)

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий