繁体   English   中英

如何通过php中的url传递html select选项值

[英]How to pass html select option value through url in php

我正在尝试通过url.selection值从mysql表传递选择选项值。我想将该驱动程序名称传递给另一个页面。

 <?php
//another select query goes here.

$query1= "SELECT  * FROM driver WHERE status='Available'" ;
echo '<td>'.'<select name="driver">';
                        $result1= mysql_query($query1);
                        while($row1 = mysql_fetch_assoc($result1))
                                    {   
                                    echo '<option value="'.$row1["name"].'">'.$row1["name"].'</option>';    
                                    }
                                    echo '</select>'.'</td>';
echo'<a rel="facebox" href=db_confirm_booking.php?id='.$row["id"].'&driver='.$_POST['driver'].'>' . 'Confirm' . '</a>';

?>

使用jQuery。

下拉菜单的呼叫change事件。

$(function(){
  $("[name=driver]").die('change').live('change', function(){
    var driver = $(this).val();
    if (typeof driver !== 'undefined') {
      window.location.href = 'YOUR_FILE.php?driver='+driver;
    }
  });
});

在您的YOUR_FILE.php ,使用$_GET['driver']获取驱动$_GET['driver']

或者,如果您希望表单更安全,请使用隐藏变量。

更改driver ,为其分配driver下拉列表的值。

并发布表格。

在您的PHP文件中,将其获取为$_POST['hid_driver']

U可以为选择字段添加onclick函数,请尝试这种方式

<?php
//another select query goes here.

$query1= "SELECT  * FROM driver WHERE status='Available'" ;
echo '<td>'.'<select name="driver" onchange="window.location.href=\'db_confirm_booking.php?driver=' . $_POST['driver'] . '&id=\'+this.value">';
                        $result1= mysql_query($query1);
                        while($row1 = mysql_fetch_assoc($result1))
                                    {   
                                    echo '<option value="'.$row1["name"].'">'.$row1["name"].'</option>';    
                                    }
                                    echo '</select>'.'</td>';
echo'<a rel="facebox" href=db_confirm_booking.php?id='.$row["id"].'&driver='.$_POST['driver'].'>' . 'Confirm' . '</a>';

?>

试试这个代码

<?php
//another select query goes here.

$query1= "SELECT  * FROM driver WHERE status='Available'" ;
echo '<td>'.'<select name="driver" 
onChange="window.location.href=this.value">';
$result1= mysql_query($query1);
while($row1 = mysql_fetch_assoc($result1))
{   
echo '<option value="db_confirm_booking.php?id='.$row["id"].'&driver='.$_POST['driver'].'">"'.$row1["name"].'">'.$row1["name"].'</option>';    
}
echo '</select>'.'</td>';
echo'<a rel="facebox" href=db_confirm_booking.php?id='.$row["id"].'&driver='.$_POST['driver'].'>
' . 'Confirm' . '</a>';

?>

示例代码

<select onChange="window.location.href=this.value">
<option value="www.google.com">A</option>
<option value="www.aol.com">B</option>
</select>
<select name="sel" id="sel" onchange="seturl(this.value)">
<option value=""></option>
</select>

<script>
function seturl(id)
{
  document.forms[0].action="test.php?driver="+id;
  document.forms[0].submit();
}
</script>

它将使用url中的驱动程序名称重新加载页面。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM