所以我一直在谷歌上阅读,它只是一堆不同的答案,没有太多的解释。
我的问题是如何在 PHP 页面之间切换?假设我的服务器上有一个目录,其中包含以下文件:
index.php
about_us.php
contact_us.php
假设在所有 3 页上,我有一个带有 3 个链接的标题:
Home
Info
Contact
当其中一个按钮(比如说联系人)被击中时会发生什么?
我已经阅读了3种技术:
Php: header("contact_us.php")
javascript: window.location = "contact_us.php";
html: <meta http-equiv="Refresh" content="5; URL="contact_us.php">
按照今天的标准,这些中的任何一个都是首选的吗?我在某处读到你现在不应该使用 php 的 header() 函数。
任何见解都将有助于我做出决定:)
只需将它们设为常规链接即可
<a href="contact_us.php">Contact</a>
只需使用 html hyper reference...
<a href="index.php">Home</a> <a href="contact_us.php">Contact Us</a> <a href="about_us.php">About Us</a>
你只是让他们链接像
<a href="contact_us.php">Contact Us</a>
每当单击链接时,它们都会被带到该页面。如果你是PHP新手:你可以用PHP编写HTML。
您也可以使用此技术: (不需要数据库)
假设您有一个 index.php 文件:
<?php
$mypage = $_GET['mypage'];
switch($mypage)
{
case "one":
@include("one.php");
break;
case "two":
@include("two.php");
break;
default:
@include("default.php");
}
?>
然后像这样引用:
<a href="index.php?mypage=one">one</a>
And:
<a href="index.php?mypage=two">two</a>
等。
直接调用索引.php会将您带到默认.php页面内容。
你应该直接调用脚本,或者有一个调用它的处理程序(如果你想要漂亮的 url)。
<a href="/contact_us.php">Contact</a>
你不应该使用任何类型的重定向,它会对SEO产生不良影响。
正如其他人所说,你只需要使用常规的html来建立链接。
您指的是重定向方法,该方法无需用户交互即可更改当前位置。如果你想这样做,使用 PHP 的 header()
发送 HTTP 标头绝对是首选方法。
我只有解决方案:)
<html>
<body>
<button onclick="confirmNav() ? (doubleConfirmNav() ? navigate() : cancelled() ): cancelled();">Contact Us</button>
<script type="text/javascript">
function confirmNav() {
var r=confirm("Do you really want to navigate to 'Contact Us'?");
if (r==true) {
return true;
} else {
return false;
}
}
function doubleConfirmNav() {
var r=confirm("Are you 100% sure?");
if (r==true) {
return true;
} else {
return false;
}
}
function cancelled() {
alert("cancelling navigation");
}
function navigate() {
// purposely delay the redirect to give the image of a high traffic site
setTimeout(function() {
window.location = "contact_us.php";
}, 5000);
}
</script>
</body>
</html>