Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

A pesquisa está mostrando todos os produtos


Seu formulário não está estruturado corretamente - o campo "user_query" está fora do formulário, então $_GET['user_query'] nunca seria definido. Tente mudar isso:
<form class="form-wrapper cf">
    <input type="text" name="user_query" placeholder="Search here..." required>
  <form method="get" action="results.php" enctype="multipart/form-data">
    <button type="submit" name="search" value="Search">Search</button>
</form> 

Para algo assim:
<div class="form-wrapper cf">
    <form method="get" action="results.php" enctype="multipart/form-data">
        <input type="text" name="user_query" placeholder="Search here..." required>
        <button type="submit" name="search" value="Search">Search</button>
    </form> 
</div>

Além disso, como vários outros notaram, isso é suscetível à injeção de SQL. Este post discute um cenário muito semelhante ao seu:Como posso evitar injeção de SQL em PHP?

Eu sugiro fortemente que você execute seu código gerado por meio de um serviço de validação para detectar erros em seu html. Certifique-se de usar o html gerado (copiar de "view source" no navegador), não apenas o código do seu arquivo php porque o validador não entenderá o PHP. O Consórcio WWW tem uma boa ferramenta:http://validator.w3.org/#validate_by_input