Использование $ _POST для получения значения параметра выбора из более чем двух раскрывающихся списков HTML - PullRequest
0 голосов
/ 25 мая 2018

Как мне выполнить запрос MySql, используя php $ _POST из более чем двух раскрывающихся списков?

Допустим, у меня есть три следующих раскрывающихся списка в форме HTML:

    <form method="post" action="myphpscript.php">
    <select name="country">
      <option value="1">Belgium</option>
      <option value="2">Canada</option>
      <option value="3">Spain</option>
    </select>
    <select name="year">
        <option value="2001">First</option>
        <option value="2002">Second</option>
        <option value="2003">Third</option>
      </select>
    <select name="virus">
        <option value="hiv">HIV</option>
        <option value="hcv">HCV</option>
        <option value="hbv">HBV</option>
      </select>
    <input type="submit" value="Submit the form"/>
  </form>

ТогдаУ меня есть мой запрос:

<?php   
    $query=sprintf("select country, year, virus from f_report where      country='%s' and year ='%s' and virus ='%s'",
          mysqli_escape_string($con,$_POST["country"]),
          mysqli_escape_string($con,$_POST["year"]),
          mysqli_escape_string($con,$_POST["virus"]));?>

Как мне заставить этот запрос работать, если, например, пользователь выбрал только "страну"?

1 Ответ

0 голосов
/ 26 мая 2018

Это можно сделать двумя способами.

  1. Вы можете назначить значения по умолчанию, проверив, что $_POST['key'] пусто, например

    $_POST['year'] = isset($_POST['year']) ? $_POST['year'] : 'default value';
    

или

Установите дополнительные поля в вашей базе данных null.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...