Preencher tabela utilizando php e javascript

Saudações, pessoal :slight_smile:
Estou há um tempinho quebrando cabeça com isso e não consigo avançar de modo algum.
Estou tentando preencher uma tabela (com dados do banco) conforme você for digitando em um campo de texto. Eu pensei em passar um evento “onkeypress” no campo de texto, e chamar uma função, e passar o trecho responsável por preencher a tabela dentro dela, mas creio que o caminho não seja esse.

> function pre()
{
 
      <?php 
      $submit = $_Post['meu-input'] ;
            $sql = "Select * from usuario where email like '$submit%' " ;
                  $resultado = mysqli_query($con,$sql); 
                
              while($dados = mysqli_fetch_array($resultado)){
                $email = $dados['email'];
                $senha = $dados['senha']; 
                echo(
                    "<tbody>"
                    ."<tr>"
                    ."<th scope=\"row\"></th>"
                    ."<td> $email </td>"
                    ."<td> $senha</td>"
                    ."</tr>"
                    ."</tbody>");
  
               }
               
               ?>
}

Aceito sugestões para conseguir resolver o problema.

Você precisa entender o seguinte: ao submeter um formulário, a página é atualizada. Ou você está usando algo em ajax e, então, esta função que colocou não deve existir, no mínimo, deve ser alterada, ou você não vai conseguir

em primeiro lugar pesquise como usar prepared statement com php, vc esta enfiando a string dentro do seu SQL sem sanitizar a entrada e seu código fica extremamente vulnerável

em segundo, o q vc quer pode ser obtido das seguintes formas:

A. vc escreve TODOS os emails e com javascript vc vai escondendo o q nao condiz

B abusando de javascript, ajax, json e rest, a cada letra digitada vc faz um request ( GET por exemplo, tipo /search.php?email=gataodarodoviaria@mail.ru e isso retorna um json a o javascript le e transforma em html )

C. combine as formas: a primeira letra vc pega os usuários, depois vc vai escondendo pra evitar dezenas de requisiçoes

se vc tem menos de 1000 usuarios, vai de A, vai ser um loop simples e com um belo uso de jQuery e escolhendo os IDs corretos, capaz de ficar um belo efeito.

Obg pelo toque do statement, consegui corrigir essa parte.

Na verdade, acho que essa consulta ao banco não retornará mais que 100 linhas. Todavia, Os dados virão de tabelas diferentes, de acordo com os filtros escolhidos pelo usuário, desta forma é impossível escrever os dados previamente. Eu não cheguei a citar, mas, esses campos da tabela e dados que vem do BD, são apenas para exemplificação msm.