我有一个表的函数id引用另一个具有函数名称的表(葡萄牙语中的Funcao,如代码中所示)。 我想打印具有该功能的人员姓名旁边的所有功能的名称。
基本上整个程序的代码是让用户在搜索栏中写一些东西并显示它,因为用户按下一个键,结果显示出来。 这是给我错误的部分。 (search_string变量是用户写入的字段。)
$query = 'SELECT * FROM utilizadores WHERE nome LIKE "%'.$search_string.'%"';
$result = $tutorial_db->query($query);
while($results = $result->fetch_array()) {
$result_array[] = $results;
}
上面的查询采用了用户名。
$query2 = 'SELECT * FROM funcoes WHERE id_funcao="'.$result_array["id_funcao"].'"';
$result2 = $tutorial_db->query($query2);
while($results2 = $result2->fetch_array()){
$result_array2[] = $results2;
}
这个获取该用户的函数的id,并尝试查询以获取该函数的名称。
提前致谢
答案 0 :(得分:0)
最简单的方法是使用连接
SELECT
utilizadores.nome,
funcoes.funcao
FROM
utilizadores
JOIN funcoes ON (utilizadores.id_funcao = funcoes.id_funcao)
WHERE
utilizadores.nome LIKE "%<query>%"
然后你有一个数组,其中包含一个查询中人员的名称和功能