我是PHP的新手,所以请在这个基本级别的问题中与我一起承担。
我想创建一个脚本,根据GET变量将用户重定向到各种地址。例如, redirection.php?id = youtube 应该将它们重定向到www.youtube.com, redirection.php?id = twitter 应该将它们重定向到www.twitter.com , 等等。
这是我的代码:
<!DOCTYPE html>
<html>
<head>
<title>Please Wait...</title>
</head>
<body>
<?php
// directs the user to various locations on the internet
print_r($_GET);
if($_GET['id'] === 'youtube') {
header('Location: http://www.youtube.com/') ;
die()
}
if($_GET['id'] === 'twitter') {
header('Location: http://www.twitter.com/') ;
die()
}
if($_GET['id'] === 'reddit') {
header('Location: http://www.reddit.com/') ;
die()
}
?>
</body>
</html>
到目前为止,PHP文件根本没有响应,我该如何更改以解决这个问题?
再次,对于基本级别的问题感到抱歉,但这实际上是我的第一个PHP脚本,我不太熟悉一些使Google难以搜索正确代码的术语。
答案 0 :(得分:1)
当比较PHP中的值是否相等时,可以使用==运算符或===运算符。 2之间有什么区别?嗯,这很简单。 ==运算符只是检查左右值是否相等。但是,===运算符(注意额外的“=”)实际检查左边和右边的值是否相等,并检查它们是否属于相同的变量类型(比如它们是否都是布尔值,整数)等等。)。
和
模具();你忘记了分号()
你的代码应该是
if($_GET['id'] == 'youtube') {
header('Location: http://www.youtube.com/') ;
die();
}
if($_GET['id'] == 'twitter') {
header('Location: http://www.twitter.com/') ;
die();
}
if($_GET['id'] == 'reddit') {
header('Location: http://www.reddit.com/') ;
die();
}
答案 1 :(得分:0)
您可以尝试以下代码:
<!DOCTYPE html>
<html>
<head>
<title>Please Wait...</title>
</head>
<body>
<?php
// directs the user to various locations on the internet
extract($_REQUEST);
if(isset($id) && $id == 'youtube') {
header('Location: http://www.youtube.com/') ;
die();
}
if(isset($id) && $id === 'twitter') {
header('Location: http://www.twitter.com/') ;
die();
}
if(isset($id) && $id === 'reddit') {
header('Location: http://www.reddit.com/') ;
die();
}
?>
</body>
</html>