使用链接和提交按钮提交表单


Using a link and submit button to submit a form

我正在做一个网站。我希望网站从index.php重定向到index.php?lang=En.

这是因为该站点是多语言的,并且需要在主页上将默认语言设置为英语。我使用header()方法来做到这一点,但这会导致重定向循环,因为网站会永远重新加载。

我怎样才能克服这个障碍?

在你的PHP中:

<?php
// Default to English if $_GET['lang'] isn't set
$lang = isset($_GET['lang']) ? $_GET['lang'] : 'En';
// If language not in array of available languages, reset to English
if (!in_array($lang, array('En', 'Es', 'Fr'))) {
   $lang = 'En';
}    
header('Location: index.php?lang=' . $lang);
?>

在你的HTML中:

<a href="index.php?lang=En">English</a>, 
<a href="index.php?lang=Es">Español</a>,
<a href="index.php?lang=Fr">Français</a>

我想这样做:

if(!isset($_GET['lang']) {
    header('location: http://www.example.com/index.php?lang=En');
}

检查URL中是否存在lang参数,如果不存在则进行重定向:

if (!isset($_GET['lang']) {
    header('Location: http://www.example.com/index.php?lang=En');
}