Mysql
 sql >> база данни >  >> RDS >> Mysql

Търсенето показва всички продукти

Вашият формуляр не е правилно структуриран - полето "user_query" е извън формуляра, така че $_GET['user_query'] никога няма да бъде зададен. Опитайте да промените това:

<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> 

На нещо подобно:

<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>

Също така, както няколко други отбелязаха, това е податливо на SQL инжекция. Тази публикация обсъжда сценарий, много подобен на вашия:Как мога да предотвратя SQL инжектирането в PHP?

Силно препоръчвам да стартирате генерирания си код чрез услуга за валидиране, за да уловите грешки във вашия html. Не забравяйте да използвате генерирания html (копие от "view source" в браузъра), а не само кода от вашия php файл, защото валидаторът няма да разбере PHP. Консорциумът WWW има добър инструмент:http://validator.w3.org/#validate_by_input




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL заявка с помощта на масив

  2. Настройване на Laravel на Mac php artisan мигриране грешка:Няма такъв файл или директория

  3. Сценарии за архивиране и възстановяване на MySQL в облак с помощта на Microsoft Azure

  4. задайте нова стойност за ft_min_word_len FULLTEXT в mysql

  5. java.sql.SQLException:Преди началото на набора от резултати