php curl через iframe не будет переходить по гиперссылкам с целевого сайта

Site_a index.php использует 2 фрейма:

iframe_1 для site_a, который является навигационным меню (site_a.com)
iframe_2 для site_b, который является кобрендовым сайтом (site_b.com)

Моя цель — объединить два моих сайта на одной странице через два фрейма, что работает с кодом ниже. Однако в frame_2 гиперссылки контента действуют так, как будто они принадлежат site_a, а не следуют за ними из site_b.

То, что я ожидал в frame_2, должно было следовать гиперссылкам http://site_b.com/somepage.php, но что я получаю в frame_2 http://site_a.com/somepage.php

<?php
// curl function
function get_page($url){
$msg = "";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_ENCODING, true);
curl_setopt($ch, CURLOPT_MAXREDIRS, -1);

$html = curl_exec($ch);

if (!curl_errno($ch)) {
$msg = $html;
} else {
$msg = 'Curl error: ' . curl_error($ch);
}
curl_close($ch);

return $msg;
}

// domain
$domain = "http://site_b.com";
$page_content = get_page("$domain/somepage.php");

// display fetched page
var_dump($page_content);

// navigate dom to iframe_2
$xml = new DOMDocument();
@$xml->loadHTML($page_content);
$path = new DOMXPath($xml);
$forms = $path->query("//iframe[@id='iframe_2']");
$relative_uri = "";
foreach ($forms as $form) {

// 1 result
if (strtolower($form->getAttribute('id')) === strtolower("iframe_2"))
{
$relative_uri = $form->getAttribute('src');
}
}

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector