2015-04-28 132 views
-2

如果輸入一個值,系統將正常運行。問題是,當我輸入多個值時,系統不顯示任何輸出。我需要用戶可以批量輸入數據並用空格分隔。我的代碼有問題嗎?使用PHP和mysql搜索功能

$studid = clean($_POST['studid']); 
$studid2 = $studid; 
$studid3 =explode(' ',$studid2); 
require("php/conn.php"); 

$sql=mysql_query("SELECT id,studid,name from student where studid in('". implode(',', $studid3)."') group by studid,name"); 

echo" 
<table> 
<thead><tr><th>NAME</th><th>IC NUMBER</th><th>ADDRESS</th><th>PHONE NUMBER</th><th>SOURCE</th></tr></thead><tbody>"; 

if(mysql_num_rows($q) > 0) 
{ 

    while($row=mysql_fetch_array($q)) 
    { 
    echo" 
    <tr> 
    <td>".$row['nama']."</td> 
    <td>".$row['nokp']."</td> 
    <td>".$row['alamat2']."</td> 
    <td>".$row['notel2']."</td> 
    <td>".$row['info']."</td> 
    </tr>"; 
    } 

    echo "</tbody></table></div>"; 
} 
+0

任何錯誤你...你可以通過回聲查詢簡單地嘗試和笏你檢查。 –

+0

如果我輸入一個值,系統將正常運行。輸出將顯示。示例輸入:s123456但如果我輸入的值超過1個,輸出將不會顯示。示例輸入:s123456 s321 1111 2222 –

+0

打印您的查詢並檢查您得到'echo「的值SELECT studid,studid,名稱「' –

回答

0
$studid4 = "'" . implode("','", $studid3) . "'"; 
+2

你會添加一個介紹性的段落來說明這裏發生的事情嗎?三個字符的膠水是幹什麼的?我們不鼓勵只有代碼的答案,因爲我們認爲他們自己並不特別說明問題。 – halfer