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

Форум PHP

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

 

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

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

тема: include с другого домена
 
 автор: Tyoma   (02.04.2008 в 23:34)   письмо автору
 
 

Интересует возможно ли сделать include с другого домена?
Напр. в PHP коде страницы сайта www.site1.com вызвать include('www.site2.com/file.php');
Я пытался сделать такое, но почему-то у меня ничего не получилось (возможно плохо пытался).

И сразу же другой вопрос: если такое возможно, то как отследить с какого именно сайта (страницы) был сделан include?

   
 
 автор: DEM   (02.04.2008 в 23:38)   письмо автору
 
   для: Tyoma   (02.04.2008 в 23:34)
 

Как я понимаю, такое сделать нельзя... Так как с помощью include(); вы получаете имено текст файла (в данном случае РНР), а не его "обработанную для вывода" html версию... Что бы просто подключить файл с другого сайта есть функции file_get_content();, етсь библиотека CURL (хотя сам её пользовался только один раз)... так же функция fopen();...

   
 
 автор: mihdan   (02.04.2008 в 23:38)   письмо автору
 
   для: Tyoma   (02.04.2008 в 23:34)
 

Если в php.ini разрешено (allow_url_include on), то можно, правда получите не скрипт, а результат его работы

Версии PHP для Windows до PHP 4.3.0 не поддерживают возможность использования удаленных файлов этой функцией даже в том случае, если опция allow_url_fopen включена

   
 
 автор: Хулиган   (03.04.2008 в 01:00)   письмо автору
 
   для: Tyoma   (02.04.2008 в 23:34)
 

функции из инклюда (ни сам код, ни результат работы ф-ции) не получить.
Только полный результат работы инклюда, выводимый через echo/print

<?
include "some.host.ru/inc/include.php";
....
....
$result some_foo_from_inc();
?>

выдаст ошибку, хотя some_foo_from_inc() в инклюде присутствует.

   
 
 автор: Tyoma   (03.04.2008 в 18:11)   письмо автору
 
   для: Хулиган   (03.04.2008 в 01:00)
 

А как получить результат работы инклюда и что с ним можно сделать? Можно ли в инклюде с помощью echo вывести код, который исполнится на вызывающем сервере?

   
 
 автор: Хулиган   (03.04.2008 в 18:43)   письмо автору
 
   для: Tyoma   (03.04.2008 в 18:11)
 

Можно ли в инклюде с помощью echo вывести код, который исполнится на вызывающем сервере?
Сделать echo конечно можно, но вывести код не получится, т.к. при запросе сервер отдаст не код, а результат его работы.
Можно сохранить результат работы в БД, или в файл, который не будет исполняться интерпретатором php, и оттуда уже попробовать считать.
У меня например есть такой сайт, на котором инклюд занимается тем, что грабит тв-программы, парсит и складывает их в БД. А когда мне надо, я соединяюсь с сайтом и качаю очищеную и подготовленную к отображению тв-программу из БД.

   
 
 автор: Atheist   (04.04.2008 в 15:28)   письмо автору
 
   для: Хулиган   (03.04.2008 в 18:43)
 

> Сделать echo конечно можно, но вывести код не получится
> Можно сохранить результат работы в БД, или в файл, который не будет исполняться

<?php
echo '<?php echo "Hello world!", \' :)\'; ?>';
?>

   
 
 автор: zavragnov   (04.04.2008 в 16:23)   письмо автору
 
   для: Tyoma   (03.04.2008 в 18:11)
 

Может это подойдет.

Работа с Веб-сервисами.

http://www.php.su/articles/?cat=others&page=017

   
Rambler's Top100
вверх

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