2016-01-22 83 views
0

首先,我很感激我用my question last week得到的幫助,但仍然有一些我還沒有弄清楚。從PHP中的SQL表中獲取單一結果

當我在搜索框中輸入的字詞,通過下面的代碼來處理...

<?php 
$servername = "localhost"; 
$username = "user"; 
$password = "password"; 
$dbname = "dbname"; 

// Create connection 
$conn = mysqli_connect($servername, $username, $password, $dbname); 

// Check connection 
if (!$conn) {  
    die("Connection failed: " . mysqli_connect_error()); 
} 

$sql = "SELECT ID, FirstName, LastName FROM `table` LIMIT 0, 30 "; 
$result = mysqli_query($conn, $sql); 

if (mysqli_num_rows($result)>0) { 
    // output data of each row 
    while($row=mysqli_fetch_assoc($result)) { 
    echo "ID: " . $row["ID"]. " - Name: " . $row["FirstName"]. " " . $row["LastName"]. "<br>"; 
    } 
} else { 
echo "0 results"; 
} 

mysqli_close($conn); 
?> 

我得到的所有從我的SQL表中列出的可能的結果。

那麼,如何限制最終用戶輸入的結果呢?我知道我應該使用LIKE或WHERE語句。

如果有幫助,我正在創建一個醫療專業人員,他們的實踐名稱和位置的數據庫。

+0

解釋THW輸入。手段結果匹配反對名字???? – devpro

+0

@devpro - 名字或姓氏。我想,'身份證'並不需要在那裏。 –

+0

Chk回答它會工作 – devpro

回答

1

假設你有一個看起來像這樣的形式:

<form action="" method="post"> 
    Search: <input name="search" type="text"> 
</form> 

你可以擴展你的SQL如下:

$sql = "SELECT ID, FirstName, LastName FROM `table` "; 
if (isset($_POST['search'])) { 
    $search = mysqli_real_escape_string($conn, $_POST['search']); 
    $sql .= " WHERE FirstName LIKE '%$search%' 
       OR LastName LIKE '%$search%' "; 
} 
$sql .= " LIMIT 0, 30 "; 
$result = mysqli_query($conn, $sql); 
// ... etc. 

要明確的是,「......等等。」意味着你的輸出代碼保持原樣:

if (mysqli_num_rows($result)>0) { 
    // output data of each row 
    while($row=mysqli_fetch_assoc($result)) { 
     echo "ID: " . $row["ID"]. " - Name: " . $row["FirstName"]. " " . $row["LastName"]. "<br>"; 
    } 
} else { 
    echo "0 results"; 
} 

mysqli_close($conn); 
+0

Plz刪除收尾$%$ search $% – devpro

+0

確實。已更正 – trincot

+0

我用@trincot代替第15-21行的代碼,現在我無法進入我的PHP頁面。 (我沒有改變任何東西。) –

-1
$sql1=mysqli_query("SELECT*FROM table ORDER BY id DESC LIMIT 1"); 
$result1=mysqli_fetch_array($sql1); 
+0

Plz添加解釋和你在做什麼混合mysql和mysqli? – devpro

+0

歡迎來到Stack Overflow!你能否解釋你的答案如何解決問題中的問題?僅有代碼的答案並不是很有用,特別是對於那些偶然發現這篇文章的讀者。 – Cristik