Как подставить в checked yes

dmx

Хранитель порядка
Регистрация
22 Июн 2011
Сообщения
709
Реакции
705
Парни подскажите - мне чтоб после обновления страницы данные оставались на месте:
Допустим :
Код:
<input type="text" name="a" value="<?php echo $a; ?>
Ну это просто . А как быть с checked ?
Чтоб подставить yes
Код:
<td><input name="c" value="yes" type="radio">Да
<input name="c" value="no" type="radio" checked>Нет</td>
 
PHP:
<td><input name="c" value="yes" type="radio" <?php if ($c=="yes") echo 'checked'; ?>>Да
<input name="c" value="no" type="radio" <?php if ($c=="no") echo 'checked'; ?>>Нет</td>

Если я правильно понял задачу.
 
  • Нравится
Реакции: dmx
А по умолчанию чекед на НЕТ возможно тут подставить ?
 
объяви предварительно:
PHP:
if($_POST['c']!="yes" or !$_POST['c']){$c=="no";} // ну или if($_GET['c']!="yes" or !$_GET['c']){$c=="no";} в случае если форма отправляет данные посредством  get запроса
 
  • Нравится
Реакции: dmx
Код:
<td><input name="c" value="yes" type="radio" <?php if ($c=="yes") echo 'checked'; ?>>Да
<input name="c" value="no" type="radio" <?php if ($c=="no") echo 'checked'; ?>>Нет</td>

Так получаются изначально оба пустые. А мне надо чтоб по умолчанию было НЕТ.
Подскажите, как мне это прикрутить :
Код:
if($_POST['c']!="yes" or !$_POST['c']){$c=="no";}
 
ну я же говорю ПРЕДВАРИТЕЛЬНО, то есть до вывода
Код:
<td><input name="c" value="yes" type="radio" <?php if ($c=="yes") echo 'checked'; ?>>Да
<input name="c" value="no" type="radio" <?php if ($c=="no") echo 'checked'; ?>>Нет</td>
 
  • Нравится
Реакции: dmx
А мне надо чтоб по умолчанию было НЕТ.

Код:
<input name="c" value="yes" type="radio">Да
<input name="c" value="no" type="radio" checked>Нет</td>
Так что ли?)
Так всегда по умолчанию будет "нет".

Или, если "данные на месте" = "Данные, введенные юзером", то самый простой вариант такой:
PHP:
<?
if($_POST['c']=="yes"){ 
echo'<input name="c" value="yes" type="radio" checked>Да
<input name="c" value="no" type="radio">Нет</td>'; 
}else{
echo'<input name="c" value="yes" type="radio">Да
<input name="c" value="no" type="radio" checked>Нет</td>'; 
}
?>
Если выбрано Да, то будет Да. Если ничего не выбрано или выбрано нет, то будет нет.
 
  • Нравится
Реакции: dmx
Чтобы избежать нежелательных нотисов и прочего советую делать условие таким:
PHP:
if(isset($_POST['c']) && $_POST['c'] =="yes")
а лучше, кмк, так:
PHP:
$c_field = (isset($_POST['c'] && $_POST['c'] =="yes")?$_POST['c']:'';
if($c_field)
также можно учесть методы отправки и обратиться к $_REQUEST вместо $_POST.
 
  • Нравится
Реакции: dmx
Назад
Сверху