php искать исходный код URL для конкретного слова, а затем перенаправить на URL

0

Мне нужен PHP-код для поиска исходного кода URL-адреса для определенного слова, и если слово существует, оно будет перенаправлено на этот URL-адрес. У меня есть следующий код, но я не знаю, как сделать часть перенаправления:

<?php
$ch =  curl_init("http://www.example.com");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);

echo (stristr ($result, 'specificword')) ? "<div style='text-align:center; color:green'>Online</div>" : "<div style='text-align:center; color:red'>Offline</div>";
?>
Теги:
redirect

3 ответа

0

Мой обновленный код выглядит следующим образом:

<?php
    $URL = 'http://www.example.com';
    $ch =  curl_init($URL);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $result = curl_exec($ch);

    if (stristr ($result, 'Domain')) {
        header('Location: '. $URL);
    }
    else{
        echo "No matches found";
    }
?>
  • 0
    Кто-нибудь может помочь? Спасибо!
  • 0
    Я отредактировал ваше сообщение, и после того, как оно было проверено, у вас есть рабочий код. По сути, вы говорите curl, чтобы открыть URL «$ URL» (буквально, а не содержимое переменной $ URL).
Показать ещё 4 комментария
0

ОБНОВЛЕНИЕ: с кодом, который вы предоставили, это мое исправление:

<?php
    $URL = 'http://www.example.com';
    $ch =  curl_init($URL);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $result = curl_exec($ch);

    if (stristr ($result, 'Domain')) {
        header('Location: '. $URL);
    }
    else{
        echo "No matches found";
    }
?>

Старый ответ

Если вы сначала хотите показать ONLINE, вам потребуется что-то вроде обновления META.

Измените последнюю строку на:

echo (CONDITION HERE) '<html>
<head>
<title>Site online</title>
<meta http-equiv="refresh" content="5; url=http://example.com/">
</head>
<body>
<div style="text-align:center; color:green">Online</div>" : "<div style='text-align:center; color:red'>Offline</div>
</body>
</html>';

Если вам не нужно сначала показывать ONLINE и просто хотите перенаправить, попробуйте:

if (stristr ($result, 'specificword')) {
  header('Location: http://www.example.com');
}

Также я предлагаю использовать mb_stristr потому что он лучше обрабатывает Unicode.

  • 0
    Было ли у вас какое-либо эхо до вызова header (потому что тогда оно не будет работать)?
  • 0
    Нет, нет эха, я просто заменил строку эха на код, который вы мне даете: if (stristr ($result, 'specificword')) { header('Location: http://www.example.com'); }
Показать ещё 5 комментариев
-2
if something == true then
     header("location: myurl.com");
     exit;
end
  • 0
    Это не PHP и не помогает в проблеме, где он не обнаруживает текст на странице.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню