2012-09-03 66 views
0

我有關於搜索帶有文本框和下拉框的網頁的問題。MySQL數據庫填充下拉框和PHP搜索

我有表字段:

 
ID 
First name 
Last name 
Company name 
Occupation 
Description 

現在我需要將從數據庫(場Occupation)和文本框,我可以把我想做的事情,然後從數據庫中獲得的結果填充搜索表單基於那些在網頁上。

我真的很抱歉,但我完全初學者只需要這樣那樣的代碼,並有很大幫助:)

謝謝

+0

你的問題不清楚。你在搜索什麼,你想在網站上展示什麼? – Deepak

+1

有很多很好的教程,視頻,電子書,書籍等,可以指導你通過這個,使用谷歌。 SO不是尋求這種代碼示例的最佳地點。 –

+0

我有一個人名單,他們的職業和其他信息存儲在數據庫中。現在我需要從數據庫中填充下拉框,並在搜索中實現人員職業,所以當我從例如醫生的下拉框中選擇,然後單擊搜索,將顯示所有醫生從數據庫智慧數據關於他們。現在更清楚了嗎? – Eager2Learn

回答

0

創建與搜索輸入文本形式的一些例子。

然後,在表單提交的頁面上(我喜歡回發到同一頁面),您需要執行選擇查詢以根據該搜索獲取職業列表。

例如:在index.php中

<?php 

?> 
<html> 
<body> 
<form action="<?php echo htmlentities($PHP_SELF); ?>" 
    <?php 
    if (isset($_POST['submit'])){ 
     // Insert code to connect to DB HERE 
     $searchText = htmlentities($_POST['search']); 
     $query = "SELECT * FROM table_name WHERE Occupation LIKE '%$searchText%'"; 
     $results = mysql_query($query) or die(mysql_query()); 
     echo "<select name=\"occupations\">"; 
     while($row=mysql_fetch_array($results)){ 
     echo "<option>$row[Occupation];</option>"; 
     } 
     echo "</select>"; 
    } 
    ?> 
    <input type="text" name="search"/> 
    <input type="submit" name="submit"/> 
</form> 
</body> 
</html> 
+1

但我需要使用dropdownbox搜索,而不是隻使用文本框。 – Eager2Learn

+0

視覺示例我想要的:TextBox - 在這裏我們可以輸入任何我們想要的單詞DropDownBox - 有關於職業類型自動從數據庫表填充的數據表,字段職業和畢竟搜索按鈕 – Eager2Learn

2

你會想用AJAX從您的頁面調用PHP腳本,然後使用PHP腳本來查詢數據庫,並將結果回顯到頁面。

我打算在這個例子中使用jQuery,因爲它保存了很多行,如果你還沒有,應該檢查它。

<html> 
<head> 
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script> 
    <script type="text/javascript"> 
     function searchOccupation() { 
      $.ajax({ 
       url: "searchOccupation.php?search=" + $('#searchTxt').attr('value'), 
       success: function (data) { 
        alert(data); 
       } 
      }); 
     } 
</script> 
</head> 
<body> 
    <input type="text" id="searchTxt"> 
    <input type="button" value="Search" id="searchBtn" onclick="searchOccupation()"> 
</body> 

那麼你的PHP腳本(其名稱應與在Ajax調用的「URL」字段(在這種情況下,它應該被命名爲「searchOccupation.php」)看起來就像這樣:

<?php 
    $searchTxt = $_GET['search']; 
    $con = new mysqli('server', 'user', 'password', 'database'); 
    if (!$con) {die("failed to connect: " . $con->connect_error;)} 
    $sql = "SELECT * FROM tableName WHERE occupation = '" . $searchTxt . "'"; 
    $result = $con->query($sql); 
    if (!$result) {die("No result set");} 
    while($row = $result->fetch_assoc()) { 
     echo $row['firstName']; //This sends data back to the page 
    } 
?> 

php腳本的回聲部分就是將數據發送回「成功:功能(數據)」的JavaScript的,所以回聲你想在頁面上如上取其場

編輯:稍微誤解了你的意思,ajon的上面可能是你需要的。