Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Как подключить данные с PHP по средствам JS на удаленный сервер. (https://javascript.ru/forum/dom-window/46447-kak-podklyuchit-dannye-s-php-po-sredstvam-js-na-udalennyjj-server.html)

Nyam 10.04.2014 12:20

Как подключить данные с PHP по средствам JS на удаленный сервер.
 
Здравствуйте!
Прошу помочь в решении вопроса о подключения.
Есть php файл, который генерирует какой то контент беря его с БД и модифицируя, и выводит у себя же через echo "много контента с html разметкой"; . Есть совсем другой сайт, на другом сервере к которому по средствам js нужно вставить выше описанный контент в <div id="супер айди"> сюда вставить </div>.

Подключать к сайту в который нужно вставить данный контент дополнительные библиотеки js нельзя.

Фактически мне нужно на сайт по средствами js подключить и вставить в средину дива данные генерируемые php на удаленном сервере. Так как нету знаний js то не знаю как это сделать.

Прошу помочь в решении данного вопроса, заранее всем очень благодарен.

С уважением, Егор.

Aetae 10.04.2014 12:49

Если удалённый сайт чужой и там ничего нельзя поменять, то одним javascript не обойдёшься из-за политики безопасности. Придётся уже на своём сервере парсить вывод чужого и уже готовый результат выдавать скрипту.
Если же доступ к тому заветному скрипту таки есть - то его ответ надо привести к виду jsonp.

Nyam 10.04.2014 12:55

Цитата:

Сообщение от Aetae (Сообщение 307078)
Если удалённый сайт чужой и там ничего нельзя поменять, то одним javascript не обойдёшься из-за политики безопасности. Придётся уже на своём сервере парсить вывод чужого и уже готовый результат выдавать скрипту.
Если же доступ к тому заветному скрипту таки есть - то его ответ надо привести к виду jsonp.

Сайт мой. Я могу добавить <div> в который нужно вписать вместимое ну и подключить конечно файл js к сайту. О каких ещё вы говорите изменениях ? Я же могу написать что то типа:

(function(){
		txt=document.getElementById("intro").innerHTML;
		document.write("<p>супер текст " + txt + "</p>");
}());


Подключить это <script type="text/javascript" src="http://супер адрес.js"></script>

Или это так же не будет работать ?

Aetae 10.04.2014 15:42

Вот это
echo "много контента с html разметкой";
должно быть заменено на
echo "много контента с html разметкой, упакованного в (function(){}())";
и подключено, соответственно, как script.

Nyam 10.04.2014 21:32

Можете навести небольшой пример, чтобы понял синтаксис подключаемого файла. Если можно очень рад был бы увидеть небольшой пример...

Aetae 11.04.2014 01:02

Пример: сервер/скрипт.php
echo "show('сформированный контент')"

<script src="сервер/скрипт.php"></script>
<script>
function show(html){
    document.body.innerHTML = html;
}
</script>


http://learn.javascript.ru/play/mNlXi

Nyam 11.04.2014 09:23

Огромное спасибо, остался один вопрос. Что делать если текст, в нашем примере phpout , создается не только хтмл но и для его создания нужен пхп скрипт к примеру:
$i=0;
while ($i<3){
$i++; 
$a= rand(0, 3);
echo " <div>$a </div> ";
}

И у нас должно получиться при выходе ваш текст phpout 1 2 2 и 3 рандомных циферки которые пишутся с переменной а. И да, а как то что хочешь, выводить не просто в тело страницы, а к примеру <div id="супер айди"> сюда вставить </div> , то есть проводить поиск и вставлять по id ?

Aetae 11.04.2014 09:32

Очевидно же?
Пример: сервер/скрипт.php
$i=0;
$out="";
while ($i<3){
$i++;
$a= rand(0, 3);
$out .= "<div>$a </div>";
}
echo "show('" . $out . "')";

<div id="суперайди"> сюда вставить </div>
<script src="сервер/скрипт.php"></script>
<script>
function show(html){
    document.getElementById('суперайди').innerHTML = html;
}
</script>

Nyam 11.04.2014 09:50

А можно на этом примере http://learn.javascript.ru/play/mNlXi ?

Nyam 11.04.2014 09:51

Тоеть можете внести изменения в этот пример http://learn.javascript.ru/play/mNlXi ? Большое спасибо за помощь, извините что изрядно вас измучал :(


Часовой пояс GMT +3, время: 05:35.