2017-01-22 51 views
0

我試圖將用戶標識存儲到隱藏字段(類似value =「userid」的東西),所以我可以在需要提交時使用它。 我有一個自動完成的字段工作正常,但與名字和姓氏一起顯示用戶ID。自動完成類型將用戶標識存儲到隱藏字段

這是我到目前爲止已經完成:

HTML表單輸入

<input class="typeahead form-control" type="text"> 

的JavaScript代碼

的PHP代碼

$select_user = mysqli_prepare($conn, "SELECT user_id, user_first, user_last FROM users WHERE user_first LIKE '%".$_GET['query']."%' LIMIT 10"); 
mysqli_stmt_execute($select_user); 
mysqli_stmt_bind_result($select_user, $clientid, $clientfirstname, $clientlastname); 
$json = []; 
while (mysqli_stmt_fetch($seleziona_utente)) { 
$json[] = $clientfirstname.' '.$clientlastname.' '.$clientid; 

} 
echo json_encode($json); 

許多謝謝

+0

您在'php'文件中連接'$ clientid'和'$ clientfirstname'。 」。$ clientlastname'。這就是你可以看到user_id的原因。 – EhsanT

+0

嗨,感謝您的回答。好吧,如果我從串聯中刪除$ clientid,它不會在輸入中顯示用戶標識,但我仍然不知道如何將name =「$ clientid」中的用戶標識插入到輸入中,或者也可能分開隱藏輸入。謝謝 – pippo

+0

'process()'是你的自定義函數嗎? – EhsanT

回答

0

我設法使用jquery ui而不是typeahead進行排序。這是代碼

$(document).ready(function(){ 
    var ac_config = { 
     source:'controllers/ctrl_inbox_client_search.php', 
    select: function(event, ui) { 
     $('#id_cliente').val(ui.item.value); 
     event.preventDefault(); 
     $("#clienti").val(ui.item.label); },  
     minLength:1 
    }; 
    $("#clienti").autocomplete(ac_config); 
}); 

現在我已經得到了唯一的問題是查詢,我需要選擇所有角色=「管理員」的用戶和所有屬於特定組,以便我的用戶數據庫已經使用這個數據庫查詢

SELECT user_id, user_first, user_last, user_role FROM users WHERE user_role = 'admin' UNION ALL SELECT user_id, user_first, user_last, user_role FROM user_group_join LEFT OUTER JOIN users ON user_group_join . user_join_id = users . user_id WHERE user_group_join . group_join_id = 2 AND users . user_id NOT LIKE 59 AND user_role = 'client' AND users . user_first LIKE '%{$term}%' AND users . user_last LIKE '%{$term}%' 

的問題是如果用戶的搜索也顯示,即使他們的名字是什麼,我在搜索框中鍵入不同的管理員。 有人可以幫我嗎?

相關問題