簡體   English   中英

PHP搜索MySQL表

[英]PHP search MySQL table

我已經建立了這個小腳本來搜索數據庫中的表格,但是對於我來說,如果有人只搜索電子郵件,我似乎找不到任何方法來顯示表格信息。 我希望僅搜索電子郵件,並使其顯示數據庫中該電子郵件地址的所有信息。 有什么想法嗎?

<?php
$profile = $_POST["profile"];

mysql_connect ("", "", "");
mysql_select_db ("");

$query = "SELECT * FROM `profile` WHERE `email`='$email' and `about`='$about' and 
`age`='$age' and `sex`='$sex' and `website`='$website'";


$result = mysql_query ($query);
if ($result) {
while($row=mysql_fetch_row($result))
{
echo $row[0],$row[1],$row[2];
}
}else{

}
?>

<form action="profile.php" method="post">
<input type="text" name="search"><br>
<input type="submit">

在查詢中,非數字字段必須用單引號引起來。

<?php  

  $search = $_POST["search"];
  mysql_connect("localhost", "username", "password") OR die (mysql_error());
  mysql_select_db ("your_db_name") or die(mysql_error());

  $query = "SELECT * FROM `profile` WHERE `email`='$search'";

  $result = mysql_query($query) or die (mysql_error());

  if($result) 
   {    
      while($row=mysql_fetch_row($result))   
       {      
          echo $row[0],$row[1],$row[2];   
       }    
     }
   else
     { 
       echo "No result";  
     }
 ?>

<form action="profile.php" method="post">  
  <input type="text" name="search"><br>  
  <input type="submit">
</form>   

編輯:

在上面的代碼片段中,您具有單個text字段和一個submit button因此您可以使用"search"字段值一次在任何一個數據庫字段上進行搜索。

如果要在電子郵件上搜索,則sql查詢將是:

SELECT * FROM `profile` WHERE `email`='$search'";

您可以使用OR運算符在一個或多個字段上進行搜索:

 SELECT * FROM `profile` WHERE `email`='$search' or about`='$search'";

您可以使用LIKE運算子來搜尋字串

SELECT * FROM `profile` WHERE `email` LIKE '%$search%'";

最簡單的方法是編寫另一個查詢

 $query = "SELECT * FROM profile WHERE email='$email'";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM