2011-08-20 127 views
0

我在一页上有一个从mysql填充的下拉列表。选择下拉值来从数据库中获取填充数据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

增加,因为这个问题JavaScript代码的头

<form name="form1" method="POST" action="page.php"> <select onchange="form1.submit()"> 

然后涉及到一些客户端的东西... – DaveRandom

回答

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。

1

无关用PHP或MySQL ...你可以添加一个 “的onchange” 处理您< select>元素......

<select onchange="javascript:someFunctionCallHere()"> 

到您的形式调用提交()方法应该是你想要的...

+0

我需要问你一个忙,你可以通过这个链接,它有一些PHP脚本,使我能够在我的上面的查询问。 http://www.tizag.com/phpT/examples/formvar.php 我刚刚通过上面的例子,它的工作在网站上,但是当我编码它有一些问题,没有索引已定义。 我感谢您的帮助。谢谢 – uzair

+0

我从你的链接中读取了例子。它没有任何内容,在选择的下拉框中发布表单......另外我可以告诉你,期望的效果不能在PHP中实现...... php在服务器上运行......你想要的事件处理是在客户端...所以你需要一些像JavaScript这样的客户端脚本来做你想做的事情...... – DarkSquirrel42

+0

'javascript:'不属于'onchange'等处理程序。实际上,它不是错误的唯一原因是'something:'在JavaScript中定义了一个标签(所以它不会改变任何东西)。 – ThiefMaster

0

不是很多信息,但你可以做这样的事情:在您的网页

<?php 
if(count($_POST)) 
{ 
    // do stuff 
    header('Location: http://somesite.com') ; 
相关问题