我希望在根据访问者的国家/地区提交表单后重定向我的表单页面。如何设置用户重定向到的页面?
以下是我的示例代码:
if ($lang['COUNTRY'] =="United States") <form action="US_Finish.php?&sessionid=<?php echo generateRandomString(115); ?>&securessl=true" method="post" name="us" id="us" class="proceed">
if ($lang['COUNTRY'] =="Australia") <form action="AU_Finish.php?&sessionid=<?php echo generateRandomString(115); ?>&securessl=true" method="post" name="au" id="au" class="proceed">
答案 0 :(得分:0)
就目前而言,您的代码不正确,因为您在没有分隔符的情况下混合使用PHP和HTML。
要回答你的问题,我会使用switch
语句设置一个包含所需目的地的变量,如下所示:
switch ($lang['COUNTRY']) {
case 'United States':
$destination = 'US_Finish.php';
break;
// etc. as required
default:
$destination = 'some_other_page.php';
}
print '<form action="' . $destination . '" // ... (etc) ...
答案 1 :(得分:0)
您的代码格式不正确。它应该是这样的,如果你要使用它:
if ($lang['COUNTRY'] =="United States") echo '<form action="US_Finish.php?&sessionid='.generateRandomString(115).'&securessl=true" method="post" name="us" id="us" class="proceed"><button type="submit">Submit form</button></form>';
if ($lang['COUNTRY'] =="Australia") echo '<form action="AU_Finish.php?&sessionid='.generateRandomString(115).'&securessl=true" method="post" name="au" id="au" class="proceed"><button type="submit">Submit form</button></form>';
但这可能是出于示例目的...... 这是另一种方法:
$countries = [
"Australia"=>"AU",
"United States"=>"US"
];
$countryCode = $countries[$lang['COUNTRY']];
$form = '<form action="'.$countryCode.'_Finish.php?&sessionid='.generateRandomString(115).'&securessl=true" method="post" name="'.strtolower($countryCode).'" id="'.strtolower($countryCode).'" class="proceed"><button type="submit">Submit form</button></form>';
echo $form;
答案 2 :(得分:0)
将您的语言保存为按钮值,并且每个提交按钮应具有相同的名称,然后在控制器中(您发布表单数据),您将能够通过按钮值的值重定向特定语言
<?php if ($lang['COUNTRY'] =="United States"){ ?>
<form action="US_Finish.php?&sessionid=<?php echo generateRandomString(115); ?>&securessl=true" method="post" name="us" id="us" class="proceed">
<button name="button" value="us" >Submit</button>
</form>
<?php } else if($lang['COUNTRY'] =="Australia"){ ?>
<form action="AU_Finish.php?&sessionid=<?php echo generateRandomString(115); ?>&securessl=true" method="post" name="au" id="au" class="proceed">
<button name="button" value="au" >Submit</button>
</form>
<?php } ?>
在您发布获取发布数据和重定向页面的位置为$_POST['button']
值。
<?php
if($_POST){
if($_POST['button'] =='us'){
// save posted info here
redirect('us_page');
}else if($_POST['button'] =='au'){
// save posted info here
redirect('au_page');
}
}