如何使下面的声明有效。我有一个表格,将值发布到我的function.php。我是否可以将.html文件作为内容包含在function.php而不是前往位置?我是新生,学习困难。
<?php
if ($_POST['city'] = 'london'){
header('Location: london.html');
}
if ($_POST['city'] = 'manchester'){
header('Location: manchester.html');
}
if ($_POST['city'] = 'conventry'){
header('Location: coventry.php');
}
exit;
?>
答案 0 :(得分:0)
你必须在if语句中使用==,而不是=。
试试这个,
<?php
if ($_POST['city'] == 'london'){
header('Location: london.html');
}
if ($_POST['city'] == 'manchester'){
header('Location: manchester.html');
}
if ($_POST['city'] == 'conventry'){
header('Location: coventry.php');
}
exit;
?>
查看以下链接以获取更多信息。 https://www.tutorialspoint.com/php/php_decision_making.htm
答案 1 :(得分:0)
如果您只是将位置中的值用作目标的直接交换 - 您根本不需要任何ifs - 只需将变量放在该位置:
<?php
$city = $_POST['city'];
header('Location:' . $city . '.html');
exit;
?>
//$city = london;
//header('Location:london.html');
如果您有不同的文件扩展名 - 例如您在此处显示的.html和.php - 那么您可以使用switch语句来减少if语句:
<?php
$city = $_POST['city'];
switch ($city) {
case "london":
header('Location: london.html');
break;
case "manchester":
header('Location: manchester.html');
break;
case "coventry":
header('Location: coventry.php');
break;
default:
echo "Your destination did not match any of our available cities";
}
exit;
?>