Как извлечь данные из поля выбора в php и загрузить в базу данных?
Как я могу извлечь данные из поля параметров и загрузить выбранное поле параметров в базу данных?
<div class="form-group col-md-5">
<label class="control-label">Date of birth:*</label>
<div class="form-group">
<div class="col-md-4">
<select type="text" class="form-control" id="day" >
<option>--Day--</option>
<?php
$day = array(range(1,31));
for ($i = 1; $i <= 31; $i++) {
echo "<option name='day'>".$i."</option>";
}
?>
</select>
</div>
<div class="col-md-4">
<select type="text" class="form-control" id="month">
<option>--Month--</option>
<?php
for ($i = 1; $i <= 12; $i++) {
echo "<option name='month'>".$i."</option>";
}
?>
</select>
</div>
<div class="col-md-4">
<select type="text" class="form-control" id="year">
<option>--Year--</option>
<?php
for ($i = 1900; $i <= 2016; $i++) {
echo "<option name='year'>".$i."</option>";
}
?>
</select>
</div>
</div>
</div>
Я знаю, что могу использовать https://eonasdan.github.io/bootstrap-datetimepicker / причина, по которой я использую bootstrap. но там все то же самое. я не знаю, как получить выбранные данные.
4 answers
Я не знаю вашей серверной части кода, но здесь вы пропускаете значения в полях опций. Это значение - то, что вы сохраняете в базе данных. Так что, если все остальное в порядке с вашим кодом, вы должны сделать что-то вроде этого:
<label class="control-label">Date of birth:*</label>
<div class="form-group">
<div class="col-md-4">
<select name="day" type="text" class="form-control" id="day" >
<option>--Day--</option>
<?php
$day = array(range(1,31));
for ($dayOfBirth = 1; $dayOfBirth <= 31; $dayOfBirth++) {
echo '<option value="'.$dayOfBirth.'">"'.$dayOfBirth.'"</option>';
}
?>
</select>
</div>
<div class="col-md-4">
<select name="month" type="text" class="form-control" id="month">
<option>--Month--</option>
<?php
for ($monthOfBirth = 1; $monthOfBirth <= 12; $monthOfBirth++) {
echo '<option value="'.$monthOfBirth.'">"'.$monthOfBirth.'"</option>';
}
?>
</select>
</div>
<div class="col-md-4">
<select name="year" type="text" class="form-control" id="year">
<option>--Year--</option>
<?php
for ($yearOfBirth = 1900; $yearOfBirth <= 2016; $yearOfBirth++) {
echo '<option value="'.$yearOfBirth.'">"'.$yearOfBirth.'"</option>';
}
?>
</select>
</div>
</div>
Вам просто нужно добавить атрибут name в поле <select>
и добавить значение $i
в поле <option>
как:
<select type="text" class="form-control" id="day" name='day'>
<option>--Day--</option>
<?php
$day = array(range(1,31));
for ($i = 1; $i <= 31; $i++) {
?>
<option value="<?=$i?>"><?=$i?></option>
<?php
}
?>
</select>
Здесь я использую name='day'
в теге <select>
и value="<?=$i?>"
в теге <option>
.
То же, что и для полей YEAR
и MONTH
.
Здесь вам нужно изменить две вещи.
Во-первых, дайте имя <select>
вместо <option>
.
Во-вторых, установите атрибут значения <option>
, чтобы получить значение выбранного параметра.
Таким образом, код для поля выбора, который вы написали, будет выглядеть примерно так,
<select type="text" class="form-control" id="year" name="year">
<option>--Year--</option>
<?php
for ($i = 1900; $i <= 2016; $i++) {
echo "<option value='".$i."'>".$i."</option>";
}
?>
</select>
Теперь, если методом формы является POST, получите доступ к значению года в php-скрипте с помощью $_POST, а если это GET, то получите доступ к нему с помощью $_GET.
Контрольные точки для получения значения образуют тег выбора
Если вам нужно извлечь данные из тега select, вы должны проверить следующие условия.
- Указали ли вы имя для тега select.
- Указали ли вы значение для полей параметров.
Если вы выполняете только два вышеперечисленных действия, вы можете извлечь или извлечь данные из тега select.
Пример:
Выберите тег: С именем и значения параметров
<select name="age">
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select>
Затем в PHP вы можете извлечь данные следующим образом.
<?php
if(isset($_POST['age'])
{
echo $_POST['age'];
}
?>