2011-08-20 101 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') ; 
相關問題