php / mysql показывает данные из выбранных флажков - PullRequest
1 голос
/ 12 января 2011

У меня есть таблица с именем FRUIT

id  type    daysold
1   banana  5
2   apple   6
3   apple   4
4   peach   2
5   banana  6

Мне бы хотелось иметь 3 флажка:
Банан []
Яблоко []
Персик []
ВВЕСТИ

Тогда, если я проверил только "Banana" и "Peach", вывод mysql должен показывать только те строки, которые соответствуют этим двум типам. И флажки должны оставаться отмеченными, чтобы выделить то, что было выбрано.

Я могу сделать флажки, но тогда это действительно так. Я не знаю, как правильно получить информацию из флажков и вплоть до аргумента WHERE в MYSQL-коде. Особенно не с двумя выбранными типами.

Если бы это было просто выпадающее меню с одним выбором, я бы добавил этот вариант в URL и поставил бы WHERE type = '$ choice' - но я борюсь с несколькими вариантами выбора.

Я немного новичок как в php, так и в mysql, поэтому я немного растерялся.

1 Ответ

1 голос
/ 12 января 2011

Я бы сделал такую ​​форму:

<form action="processingPage.php" method="post" name="nameHere">
    <input type="checkbox" name="fruit[]" value="Banana" /> Banana<br />
    <input type="checkbox" name="fruit[]" value="Apple" /> Apple<br />
    <input type="checkbox" name="fruit[]" value="Peach" /> Peach<br />
    <input type="submit" value="Submit" /> 
</form>

In processingPage.php:

<?php
$fruits = array();
foreach($_POST['fruit'] as $fruit) {
    $fruit = mysql_real_escape_string($fruit);
    $fruits[] = "'{$fruit}'"; 
}

$sql = "select * from fruit where type in (" . implode(", ", $fruits) . ")";
//execute query and retrieve results
?>
...