Php 获取下拉选择值并在单击按钮时重定向该页面

Php 获取下拉选择值并在单击按钮时重定向该页面,php,jquery,Php,Jquery,我有一个下拉菜单和一个提交按钮。。我希望当我在submit上选择English Language和cick时,我会重定向页面English.php 这是我的密码。。但它不起作用 <?php $lang=$_REQUEST['language']; ?> <form action="<?php echo $lang; ?>" method="Post"> <select name="language"> <option>select o

我有一个下拉菜单和一个提交按钮。。我希望当我在submit上选择English Language和cick时,我会重定向页面English.php

这是我的密码。。但它不起作用

<?php $lang=$_REQUEST['language'];  ?>
<form action="<?php echo $lang; ?>" method="Post">
<select name="language">
<option>select one</option>
<option>English</option>
<option>Hindi</option>
</select>
<input type="submit">
</form>


您需要在选项标记中指定一个值。但是,让用户指定要运行的脚本是不安全的。因此,您应该在PHP代码中检查表单中的值,并决定将用户发送到哪里

<?php
    $lang=$_REQUEST['language'];

    switch ($lang) {
        case 'english':
            $page = 'english.php';
            break;
        case 'hindi':
            $page = 'hindi.php';
            break;    
        default:
            $page = null;
    }

    if ($page) {
        header("Location: ".$_POST['language']);
        exit;
    }

?>

<form method="post">
    <select name="language">
        <option value="">select one</option>
        <option value="english">English</option>
        <option value="hindi">Hindi</option>
    </select>
</form>

选择一个
英语
印地语

为此,必须为选项定义值

<select name="language">
   <option value="">select one</option>
   <option value="English.php">English</option>
   <option value="Hindi.php">Hindi</option>
</select>
通过使用javascript

html代码:

<select name="dropdpown" size="1" id="select-anchor">
   <option value="#link">foo</option>
   <option value="#link">bar</option>
</select>

或者您可以通过jQuery更改表单的操作,如:

$('select[name="language"]').change(function(){
   $('form').attr('action' , $(this).val())
});

请找到更详细的方法

<script language="javascript">
     function goPage() {
          if (document.frm.language.value != '') {   
              document.frm.action = document.frm.language.value;
              document.frm.submit();   
          }
     }
</script>

<form name="frm" method="get">  
     <select name="language">
        <option value="">select one</option>
        <option value="English.php">English</option>
        <option value="Hindi.php">Hindi</option>
     </select>
     <input type="button" value="Go" onclick="javascript:goPage()" />
</form>

函数goPage(){
如果(document.frm.language.value!=''){
document.frm.action=document.frm.language.value;
document.frm.submit();
}
}
选择一个
英语
印地语

请清理用户输入。请参阅下面我的帖子。@user2748343:过滤用户的输入,否则您将被黑客攻击。
$('select[name="language"]').change(function(){
   $('form').attr('action' , $(this).val())
});
<script language="javascript">
     function goPage() {
          if (document.frm.language.value != '') {   
              document.frm.action = document.frm.language.value;
              document.frm.submit();   
          }
     }
</script>

<form name="frm" method="get">  
     <select name="language">
        <option value="">select one</option>
        <option value="English.php">English</option>
        <option value="Hindi.php">Hindi</option>
     </select>
     <input type="button" value="Go" onclick="javascript:goPage()" />
</form>