Как иметь дело с несколькими значениями <выбора> в PHP?

Вот мой фаворит. Кроме начальной проверки на то, недопустимо ли это (< 0, который Вы могли пропустить, если бы Вы знали, что будете только иметь>, =0 чисел передали в), это не имеет никаких циклов или условных выражений, и таким образом превзойдет большинство других методов по характеристикам. Это подобно ответу erickson, но я думаю, что мое постепенное уменьшение x вначале и добавление 1 в конце являются немного менее неловкими, чем его ответ (и также избегает условного выражения в конце).

/// Round up to next higher power of 2 (return x if it's already a power
/// of 2).
inline int
pow2roundup (int x)
{
    if (x < 0)
        return 0;
    --x;
    x |= x >> 1;
    x |= x >> 2;
    x |= x >> 4;
    x |= x >> 8;
    x |= x >> 16;
    return x+1;
}
8
задан omg 21 September 2009 в 04:33
поделиться

2 ответа

Дайте ему имя с [] на конце, например:

<select id="industryExpect" name="industryExpect[]" multiple="multiple">
    <option value="1">item1</option>
    <option value="2">item2</option>
    <option value="3">item3</option>
</select>

Затем в массиве $ _ POST вы получите массив всех выбранные параметры:

// assuming that item1 and item3 were selected:
print_r($_POST['industryExpect']);
/*
array
(
    0 => 1
    1 => 3
)
*/
10
ответ дан 5 December 2019 в 15:25
поделиться

Запуск файла Html. напр. a.html

<form action="process.php" method="post">
    <select name="names[]" multiple="multiple">
    <option value="john">john</option>
    <option value="jack">jack</option>
    </select>
    <input type=hidden name=submitted>
    <input type=submit name=submit>
</form>

Process.php:

<?php
print_r( $_POST['names'] );
?>
1
ответ дан 5 December 2019 в 15:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: