每次用户打开它时,我应该怎么做才能使html文件加载不同的页面? [关闭]

问题描述 投票:-1回答:4

这是我的html文件的内容:

<meta http-equiv="refresh" content="0; url=http://google.com" />

因此,当用户打开它时,它将被重定向到谷歌..但我想要的是在文件中写一个脚本,可以更改每次用户打开它时将加载的url /页面。

示例:第一次打开谷歌第二次打开Facebook然后,重新开始..打开谷歌,依此类推。

请问我该怎么办?

javascript php html redirect
4个回答
1
投票

你可以创建一个你需要的网址数组,然后使用随机数生成器从数组中选择一个。

<?php
    $urls = array(
      'http://www.facebook.com',
      'http://www.google.com');

    $i = rand(1, (sizeof($urls) - 1));
?>

<meta http-equiv="refresh" content="0; url=<?php echo urls[$i] ?>" />

0
投票

你可以在<meta http-equiv="refresh" content="0; url=$pagename" />中使用$ pagename变量所以$ pagename可以从一个包含多个页面的数组列表中生成,并随机化你可能获得随机页面的值。


0
投票

您可以在Javascript中随机选择一个页面,但如果您想要真正保证它是一个不同的页面,那么您需要创建一个SESSION,以便您可以再次识别同一个访问者并将它们发送到不同的地方。当您标记此PHP时,您可以执行以下操作:

<?php

$urls = array(
    'http://google.com',
    'http://yahoo.com',
    'http://bing.com');

session_start();
if(!isset($_SESSION['urlNumber'])) {
    $_SESSION['urlNumber'] = 0;
} else {
    $_SESSION['urlNumber']++;
}
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="refresh" content="0; url=<?php echo($urls[$_SESSION['urlNumber']]); ?>" />
</head>
<body>
</body>
</html>

这样做是为每个访问者启动一个会话,并通过在每次后续访问时递增会话变量来跟踪他们所经历的URL。

注意,这不是一个很好的方法。您最好从服务器发送HTTP_REDIRECT响应。此外,它将在三个URL之后中断,因为它已用完。你想在那里放一些代码,一旦达到最大网址就将其重置为0。但这符合您想要使用的方法。


0
投票

首先,通过会话,您可以知道用户打开页面的次数,然后您可以设置if以更改URL

<?php
// Start the session
session_start();
if (isset($_SESSION["count"])) {
    $_SESSION["count"]++;
} else {
    $_SESSION["count"] = 1;
}


//  Test number is odd or even (set an if for change URL)
if ($_SESSION["count"] % 2 == 0)
    // Even
    $url = "facebook.com";
else
    // Odd
    $url = "google.com";

echo $url;
?>
© www.soinside.com 2019 - 2024. All rights reserved.