Я создаю простой запрос MySQL, который будет построен на основе выбора пользователем параметров из 2 раскрывающихся списков.
Проблема, с которой я столкнулся, заключается в том, что я бы хотел, чтобы каждый раскрывающийся список имел значение по умолчанию, что, если они фактически не выбирают параметр, не выполняйте фильтрацию по этому параметру.
Так что, если они входят и просто нажимают «Отправить», не выбирая из выпадающего списка, они должны видеть все. Если они входят и выбирают только одно из раскрывающихся списков, запрос в основном игнорирует фильтрацию по другому раскрывающемуся списку.
Я пытался сделать <OPTION VALUE='any'>Choose
, но мой запрос не знал, что делать с 'any', и просто не дал результатов.
Вот мой код. Большое спасибо за любую помощь, которую вы можете оказать.
ФОРМА
<form method="POST" action="<?php echo $_SERVER['REQUEST_URI']; ?>">
<select name="GameType">
<OPTION VALUE='any'>Choose Game Type
<option value="Game1">Option 1</option>
<option value="Game2">Option 2</option>
<option value="Game3">Option 3</option>
</select>
<select name="Instructor">
<OPTION VALUE='any'>Choose Instructor
<option VALUE="InstructorA">Instructor A</option>
<option value="InstructorB">Instructor B</option>
<option value="InstructorC">Instructor C</option>
</select>
<input type='submit' value='Search Videos'>
</form>
MYSQL
<?PHP
connection stuff
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);
if ($db_found) {
$SQL = "SELECT * FROM Videos WHERE GameType=\"{$_POST['GameType']}\" AND Instructor=\"{$_POST['Instructor']}\"";
$result = mysql_query($SQL);
while ($db_field = mysql_fetch_assoc($result)) {
echo $db_field['ShortDescription'] . ", ";
echo $db_field['LongDescription'] . ", ";
echo $db_field['GameType'] . ", ";
echo $db_field['NumberOfPlayers'] . ", ";
echo $db_field['Instructor'] . ", ";
echo $db_field['Stakes'] . ", ";
echo $db_field['UserPermissionLevel'] . ", ";
echo $db_field['DateCreated'] . "<BR>";
}
mysql_close($db_handle);
}
else {
print "Database NOT Found ";
mysql_close($db_handle);
}
?>