Например, в массиве есть ключ answer, со значением 2 и надо сделать, что бы появилась форма, с радиокнопками и автоматически, была нажата вторая.
Я это сделал, но у меня код очень большой, как можно его сократить?
<?php
if($question['answer'] == 1) {
echo '
<label>1. <input name="answer" checked type="radio" value="1"></label>
<label>2. <input name="answer" type="radio" value="2"></label>
<label>3. <input name="answer" type="radio" value="3"></label>
<label>4. <input name="answer" type="radio" value="4"></label>
';
}
if($question['answer'] == 2) {
echo '
<label>1. <input name="answer" type="radio" value="1"></label>
<label>2. <input name="answer" checked type="radio" value="2"></label>
<label>3. <input name="answer" type="radio" value="3"></label>
<label>4. <input name="answer" type="radio" value="4"></label>
';
}
if($question['answer'] == 3) {
echo '
<label>1. <input name="answer" type="radio" value="1"></label>
<label>2. <input name="answer" type="radio" value="2"></label>
<label>3. <input name="answer" checked type="radio" value="3"></label>
<label>4. <input name="answer" type="radio" value="4"></label>
';
}
if($question['answer'] == 4) {
echo '
<label>1. <input name="answer" type="radio" value="1"></label>
<label>2. <input name="answer" type="radio" value="2"></label>
<label>3. <input name="answer" type="radio" value="3"></label>
<label>4. <input name="answer" checked type="radio" value="4"></label>
';
}
?>
Как то так:
function answers_echo($checked = 1, $count = 4)
{
for( $i = 1; $i<=$count; $i++ )
{
$string = '<label>'.$i.'<input name="answer" ';
if( $i == $checked )
{
$string .='checked ';
}
$string .= 'type="radio" value="'.$i.'"></label>';
echo $string;
}
}
т.е передаем значения лейбла, который должен быть отмечен и их количество. И кстати тут прям идеально использовать switch case
switch($question['answer'])
{
case 1:
answers_echo(1);
break;
case 2:
answers_echo(2);
break;
case 3:
answers_echo(3);
break;
case 4:
answers_echo(4);
break;
}
Хотя можно и так:
answers_echo($question['answer']);
P.S. Я бы посоветовал на досуге посмотреть что такое шаблонизаторы и для чего они нужны, т.к. выводить таким образом html не комильфо.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Добрый день! Нужно поместить на страницу с заказом скрипт (js массив dataLayer с данными для GTM)Но, выполниться он должен при первом просмотре страници...
Есть код, на ответ выдаётся массив данных, как выдернуть содержимое строки title после знака =>
Привет! Можно ли сделать сортировку (напрпо полю position), и привести к иерархии с помощью SQL в MySql