我在一个页面上有一个来自mysql的填充下拉列表。
我应该在php中编写什么代码,以便在选择下拉列表的值时,打开一个新页面并从mysql中获取数据,前提是我在数据库中需要字段。
<form name="form1">
<select>
<?php
$con=mysql_connect("localhost","FreeUser","123456");
if(!$con)
{
die('Connection failed' . mysql_error());
}
mysql_select_db("human_resource", $con);
$sql1=mysql_query("SELECT eid_emp,name_emp FROM employee_details");
while ($data=mysql_fetch_assoc($sql1))
{
?>
<option name="drop1" checked value ="<?php echo $data['eid_emp'] ?>" >
<?php echo $data['name_emp']; ?>
</option>
<?php
}
mysql_close($con);
?>
</select>
</form>
答案 0 :(得分:1)
与php或mysql无关...你可以为你的&lt;添加“onchange”处理程序选择&gt;元素......
<select onchange="javascript:someFunctionCallHere()">
调用你的表单submit()方法应该是你想要的......
答案 1 :(得分:1)
答案是没有PHP代码可以执行您要求的操作。
你需要两件事:1)。一些javascript挂钩到你的表单和2)。一种呈现结果查询的方法。
这里有一些javascript要挂钩到表单中,假设jquery为了简洁(虽然你应该只选择一个ID或一个类,这会使选择器不那么讨厌):
$('form[name="form1"] select').change(function(){
location.href='renderer.php?dataKey=' + $(this).val();
});
从那里,您将导航到renderer.php以及dataKey的$ _GET值。按照你的意愿渲染它。如果要打开新窗口,请使用window.open调用而不是设置location.href。
答案 2 :(得分:0)
不是很多信息,但你可以这样做:
<form name="form1" method="POST" action="page.php">
<select onchange="form1.submit()">
然后在页面的头部
<?php
if(count($_POST))
{
// do stuff
header( 'Location: http://somesite.com' ) ;