Я могу фильтровать свою форму в sql

У меня есть 2 страницы PHP, и я хочу отфильтровать свою форму данными от пользователя. имя моей базы данных: ресторан и имя моей таблицы: ресторан пожалуйста, помогите мне Я использую php мой админ. Я начинающий.

это моя HTML-страница

  <!DOCTYPE HTML>
    <HTML>
    <head>
    <meta name = "viewport" content = "width=device-width, initial-scale=1">

    <link rel = "stylesheet" type = "text/css" href = "mycss.css">
    </head>
    <BODY>

     <Form method = "get" action = "showtype.php">
    <center>
     <p><Select Name = "Foodlist">
     <Option value = "">All</Option>
     <Option value = "dessert">dessert</Option>
      <Option value = "traditional">traditional</Option>
     <Option value = "fast food">fast food</Option>
     </Select>
     </p>
     <p><input type = "submit" value = "Show"></p>
     </center>
     </Form>
    </body>
    </html>

и это моя страница php

    <!DOCTYPE HTML>
    <HTML>
    <head>
    <meta name = "viewport" content = "width=device-width, initial-scale=1">

    <link rel = "stylesheet" type = "text/css" href = "mycss.css">

    </head>
    <BODY> 

    <?php

    $db_host = "localhost";
    $db_user = "root";
    $db_pass = "";
    $db_name = "resturant";
    $db_table = "resturant";
    error_reporting(E_ALL & ~E_DEPRECATED & ~E_WARNING & ~E_NOTICE & ~E_STRICT);
    $con = mysql_connect($db_host,$db_user,$db_pass);
    $selected=mysql_select_db($db_name, $con);
      $SQL = " Select * From resturant";
      $t= $_GET['Foodlist'];
      if ($t !='')
        {
         $SQL.= " where Food-type2 = $t";

         }
     $dbresult=mysql_query($SQL,$con);

      while($amch=mysql_fetch_assoc($dbresult)) { ?> 
         <div class = "content">
         <h3><?php echo $amch['Food-type2'];?></h3>

         </div>   
        <?php } ?>
     </BODY>
     </HTML>

что я могу делать? почему я не могу фильтровать где ??

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
0
36
2

Ответы 2

Постарайтесь сохранить $ t в одинарных кавычках.

 $SQL.= " where Food-type2 = '$t'";

и для отладки запроса, выведите эхо $ SQL перед его выполнением и посмотрите, как он сгенерирован, и, если возможно, попробуйте выполнить его в консоли mysql.

как сказал praveen-myakala. вы должны изменить $SQL на

$SQL.= " where Food-type2 = '$t'";

или же

$SQL.= " where `Food-type2` = '$t'";

но помните, что mysql_connect, mysql_select_db, mysql_query и mysql_fetch_assoc устарели. И вы можете использовать MySQLi extension или PDO (PHP Data Objects) для подключения к базе данных.

Прочтите эта статья (английский) или эта статья (персидский), чтобы узнать больше

Другие вопросы по теме