Проверено радио, которое вставляется в базу данных при выборе - PullRequest
0 голосов
/ 06 октября 2011

Предполагая, что мы вовремя вставляем данные в базу данных, имеем 3 input:radio и, выбрав один из них, вставляем значение в базу данных.теперь проверяется, как выбрать из базы данных то же радио, которое вставлено в базу данных.

Пример: у нас есть 3 input:radio как:

<input type="radio" name="type1" value="value1">
<input type="radio" name="type2" value="value2" checked>
<input type="radio" name="type3" value="value3">

с отмеченным value2 вставил его в базу, теперь мы хотим показать (select) все радио и проверили радио, которое вставлено в database.as (это после выбора из базы данных):

<input type="radio" name="type1" value="value1">
<input type="radio" name="type2" value="value2" checked> // this value was in the database
<input type="radio" name="type3" value="value3">

Как это можно исправить с помощью PHP?

Ответы [ 2 ]

1 голос
/ 06 октября 2011

Вы должны, как уже говорилось, использовать одно и то же имя для переключателей. Кроме того, правильный синтаксис: checked="checked":

<input type="radio" name="type" value="value1">Value 1
<input type="radio" name="type" value="value2" checked="checked">Value 2
<input type="radio" name="type" value="value3">Value 3

При извлечении из базы данных вы можете проверить, равно ли значение значению в вашем html, и соответственно установить атрибут selected.

<input type="radio" name="type" value="value1" <?php echo ($query_hs->type == 'value1') ? 'checked="checked"' :'';?>>Value 1
<input type="radio" name="type" value="value2" <?php echo ($query_hs->type == 'value2') ? 'checked="checked"' :'';?>>Value 2
<input type="radio" name="type" value="value3" <?php echo ($query_hs->type == 'value3') ? 'checked="checked"' :'';?>>Value 3

Просто замените свои собственные значения на мои стандартные, например:

<input type="radio" name="type" value="hotel" <?php echo ($query_hs->type == 'hotel') ? 'checked="checked"' :'';?>>Hotel
0 голосов
/ 06 октября 2011

Прежде всего, название радиоэлемента должно быть одинаковым для всех трех радиокнопок, чтобы они образовывали группу. В противном случае ваши пользователи смогут выбрать все три.

Во-вторых, определите набор значений как массив в PHP. И запустить forloop для генерации HTML-кода. Что-то в этих строках -

<?php
$radio_values = array("value1", "value2", "value3"); // Assuming your set of values is static

foreach($radio_values as $value) {
    $value_from_db = read_radio_value();      // Replace this with your logic to fetch values from database
    if ($value_from_db == $value) $checked = "checked";
    else $checked = ""; 
    echo "<input type=\"radio\" name=\"type\" value=\"{$value[$i]}\" {$checked}>";  
}
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...