2014-01-10 41 views
0

由於我是Mysqli的新手,因此我不確定要查找什麼,所以我在此處發佈。MYSQLi從數據庫中選擇類似/包含的結果

TABLE = ID |名字|姓氏|屬性1 |屬性2

搜索的示例字符串是「test」 腳本應搜索名字或姓氏包含「test」或「tést」或「tèst」或其變體的任何行。

然後是應該返回JSON格式的所有結果。

我該怎麼做呢?

+2

告訴我們更多.... – Hackerman

+0

只取數組MySQL查詢結果,並使用PHP json_encode函數轉換陣列JSON – Girish

+1

你被困在哪一部分?你知道如何編寫SQL查詢嗎?你知道如何在PHP中運行它們嗎?你知道如何輸出JSON嗎? –

回答

3

那麼,MySQL到JSON是一個很大的延伸。

我們來關注一下MySQL部分。

  1. 查詢過濾在您的關鍵字:SELECT * FROM table WHERE firstname LIKE '%test%' OR lastname LIKE '%test%'
  2. 然後使用mysqli的,你可以檢索結果。

你必須自己做研究。在此發佈具體問題或問題。我們不能只爲你做...

0

你需要做的搜索字符串這是什麼

SQL:SELECT * FROM TABLE WHERE firstname LIKE '%test%' OR lastname LIKE '%test%' OR attribute1 LIKE '%test%' OR attribute2 LIKE '%test%'

當然,你可以把一個變量後的像聲明如果你想這麼喜歡'%".$_POST['value']."%'

把它放在json中使用php函數json_encode

0
SELECCT * FROM <TABLE NAME> WHERE firstname LIKE '%test%' OR lastname LIKE '%test%'; 

然後使用提取數組函數並對該數組應用json_encode()函數來獲取json字符串。

0

感謝您的幫助!

我主要是尋找SQL查詢

使用

$results = mysqli_query($mysqli, "SELECT * FROM players WHERE firstname LIKE '%test%' OR lastname LIKE '%test%'"); 


$myarray = array(); 
while ($record = mysqli_fetch_assoc($results)) 
    { 
     //print_r($record); 
     $temparray = $record; 
     array_push($myarray, $temparray); 
    } 
     echo json_encode($myarray); 
+0

這不符合測試的變化。你可以做%t_st%。 – loveNoHate

0

我發現我自己。我希望這可以幫助你作爲替代編碼。

$temp_findcategory = $_POST['findcategory']; 
$temp_findkeyword = "%".$_POST['findkeyword']."%"; 
$search = mysqli_query($conn,"SELECT * FROM table WHERE field1 like '$temp_findkeyword' order by '$temp_findcategory' asc"); 
$row_search = mysqli_fetch_assoc($search); 
相關問題