将PHP选择选项框值传递给另一个页面

时间:2014-09-27 06:47:06

标签: php mysql

我试图做的是用户点击php select option.then 它的值应作为变量传递给另一个页面。

我有一个代码 尝试。

<table>
<tr><td>
<?php 
mysql_connect("localhost","root","") or die(mysql_error());
mysql_select_db("member")or die(mysql_error());
$result = mysql_query("SELECT id,ugroup FROM ugroups"); 

?>

<select name='group' id='group' >
<?php 
while ($line = mysql_fetch_array($result)) {
echo '<option value=' . $line['ugroup'] . '>' . $line['ugroup'] . '</option>';

}?>
</select>
<a href="db_sql/add_group.php?val=<?php echo $line['ugroup'];?>">click </a>
</td></tr>
</table>

这是add_group.php代码

  <?php
    session_start();
    ob_start();
    include('../limoconfig.php');
    if(!isset($_SESSION['adminuserid']) )
    {
        header('Location:../index.php');
    }
    else
    { 
    if($_GET)
    {
        $ugroup = $_GET['ugroup'];
        /*$id = $_GET['id'];*/

        $acc_status = "update users set ugroup='".$ugroup."' where id=1931";
        echo $acc_status;
        $rate = db::getInstance()->exec($acc_status); 
        header('Location:../home.php'); 
    } 

    }
    ?>

它不能正常工作。

3 个答案:

答案 0 :(得分:3)

首先,你需要把你的桌子放进去 然后你可以点击锚点()来调用ajax。

jQuery(document).ready(function($) {
var data='';
$("#group option:selected").each(function() {
    if ($(this).attr('value') !== '') {
        data=$(this).attr('value');
    }
});
$("a").click(function() {
    $.ajax({
        type: "POST",
        url: "file.php",
        data: data,
        beforeSend: function() {

            $('body').css("opacity", "0.3");
        },
        success: function(response) {
            alert(response);
        },
        complete: function() {
            $('body').css("opacity", "1");
        }
    });
});

});

答案 1 :(得分:0)

您可以使用ajax或仅使用html表单。

例如ajax:只是一个简单的例子,您可以根据需要进行修改

<html>
<head>

function myAjax(str)
{

if (str=="")
  {
  document.getElementById("results").innerHTML="";
  return;
  } 
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
   document.getElementById("results").innerHTML=xmlhttp.responseText;

    }
  }
xmlhttp.open("GET","add_group.php?ugroup="+str,true); // your next page

xmlhttp.send();
}

function myFunction() {
    var x = document.getElementById("group").value;
     myAjax(x);
}

    </script>

</head>
<body>


<table>
<tr><td>
<?php 
mysql_connect("localhost","root","") or die(mysql_error());
mysql_select_db("member")or die(mysql_error());
$result = mysql_query("SELECT id,ugroup FROM ugroups"); 

?>

<select name='group' id='group' >
<?php 
while ($line = mysql_fetch_array($result)) {
echo '<option value=' . $line['ugroup'] . '>' . $line['ugroup'] . '</option>';

}?>
</select>
<a href="#" onclick="myFunction()">click </a>



</td></tr>
</table>

<div id="results"> <!-- the echo of add_group.php gets displayed here --> </div> 

</body>
</html>

答案 2 :(得分:0)

将其包装在表单标签中并创建一个提交按钮而不是链接,它可以在POST或GET中发送。

  

元素是表单控件,可以在表单中用于收集用户输入。

http://www.w3schools.com/tags/tag_select.asp