SnowWind
30.11.2015 - 19:08
Подскажите пожалуйста почему переменная $url не срабатывает, такое ощущение, что скрипт выполняется на удалённом сервере, а результат выполнения возвращается обратно.
index.php
<?php
$url = $_SERVER['SERVER_NAME'];
include 'http://mysite.ru/donor.php';
donor.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title><?php echo $url; ?></title>
</head>
<body>
<p style="text-align: center;">Домен - <?php echo $url; ?></p><br /><br /><br />
</body>
</html>
SnowWind
30.11.2015 - 19:46
Цитата (depp @ 30.11.2015 - 15:42) |
так и есть. |
А как сделать, что бы скрипт обрабатывался в index.php?
AllesKlar
30.11.2015 - 19:51
SnowWind
никак. php скрипт в любом случае выполнится на удаленном сервере.
_____________
[продано копирайтерам]
VeRTak
30.11.2015 - 19:52
Цитата (depp @ 30.11.2015 - 19:42) |
А как сделать, что бы скрипт обрабатывался в index.php? |
Улыбнуло
SnowWind
30.11.2015 - 19:56
Как я понимаю include должен подгрузить скрипт из donor.php в index.php и выполнить
Ведь если подгружаешь не с удалённого сервера
include 'donor.php';
то всё выполняется
AllesKlar
30.11.2015 - 20:00
Цитата (SnowWind @ 30.11.2015 - 17:56) |
Как я понимаю include должен подгрузить скрипт из donor.php в index.php и выполнить Ведь если подгружаешь не с удалённого сервера include 'donor.php'; то всё выполняется |
Не так.
Когда ты инклюдишь локальный скрипт, то php интерпретатор идет по фаловой системе к этому скрипту, открывает физически файл и вставляет его код в место include
Когда ты инклюдишь удаленный файл, то php делает http запрос к скрипту удаленного сервера. Удаленный сервер никому не даст ковыряться в своей файловой системе по http, поэтому он запустит на выполнение запрошенный скрипт и отдаст результат, который и будет вставлен в include
Фактически, include с удаленного сервера - это тоже самое, как если бы ты этот скрипт запустил в браузере. Вот ровно то, что ты увидишь в браузере и будет отдано в include
_____________
[продано копирайтерам]
SnowWind
30.11.2015 - 20:10
Цитата (AllesKlar @ 30.11.2015 - 16:00) |
Цитата (SnowWind @ 30.11.2015 - 17:56) | Как я понимаю include должен подгрузить скрипт из donor.php в index.php и выполнить Ведь если подгружаешь не с удалённого сервера include 'donor.php'; то всё выполняется |
Не так. Когда ты инклюдишь локальный скрипт, то php интерпретатор идет по фаловой системе к этому скрипту, открывает физически файл и вставляет его код в место include
Когда ты инклюдишь удаленный файл, то php делает http запрос к скрипту удаленного сервера. Удаленный сервер никому не даст ковыряться в своей файловой системе по http, поэтому он запустит на выполнение запрошенный скрипт и отдаст результат, который и будет вставлен в include
Фактически, include с удаленного сервера - это тоже самое, как если бы ты этот скрипт запустил в браузере. Вот ровно то, что ты увидишь в браузере и будет отдано в include
|
Спасибо, что доходчиво объяснил стало понятно
А можно ли тогда в include передать переменную post запросом
Что-то вроде этого
include ('http://mysite.ru/donor.php?url='.$url);
???
AllesKlar
30.11.2015 - 20:20
SnowWind
Это был гет запрос.
Можно.
А вообще, то что ты пытаешься сделать, это зачатки веб-сервиса.
Когда на одном сайте ты передаешь данные на другой, тот их обрабатывает и выдает обратно результат.
Делай сразу правильно.
_____________
[продано копирайтерам]
SnowWind
30.11.2015 - 20:34
С вашей помощью разобрался, друзья, всем спасибо ;)
index.php
<?php
$url = $_SERVER['SERVER_NAME'];
include 'http://mysite/donor.php?url='.$url;
donor.php
<?php
if (isset($_GET["url"])){$url=$_GET["url"];}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title><?php echo $url; ?></title>
</head>
<body>
<p style="text-align: center;">Домен - <?php echo $url; ?></p><br /><br /><br />
</body>
</html>
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.