Увеличить три элемента на одно число в цикле

У меня есть три элемента (радиокнопки), каждый из которых имеет свой идентификатор и классы.

Проще говоря, их всего 1, 2, 3, но на одной странице больше групп радиокнопок, я зацикливаю их, поэтому мне нужно, чтобы в следующей группе было 4 5 6, а затем 7 8 9.

Я пытался сделать это с помощью следующего кода: "

$een = 1;
$twee = 2;
$drie = 3;
$getcats = 'SELECT * FROM questioncat WHERE tid = "'.$conn->real_escape_string($gettemplate['id']).'" ORDER BY id';
$getcatscon = $conn->query($getcats);
while($getcats = $getcatscon->fetch_assoc()){
$werkplekinspectie .= '
<label class = "categorytitle">'.$getcats['title'].'</label>
<div class = "row">';

$getquestions = 'SELECT * from questions WHERE catid = "'.$getcats['id'].'"';
$getquestionscon = $conn->query($getquestions);
while($getquestions = $getquestionscon->fetch_assoc()){
  $werkplekinspectie .= '
  <div class = "col-md-8">
    <p class = "questionclass">'.$getquestions['question'].'</p>
  </div>
  <div class = "col-md-4">
    <div class = "container text-right">
        <input type = "radio" name = "group'.$een.'" id = "radio-'.$een.'" value = "ok">
        <label class = "radiotoggle" for = "radio-'.$een.'"><span class = "radio">Ok</span></label>
        <input type = "radio" name = "group'.$een.'" id = "radio-'.$twee.'" value = "fout">
        <label class = "radiotoggle" for = "radio-'.$twee.'"><span class = "radio">Fout</span></label>
        <input type = "radio" name = "group'.$een.'" id = "radio-'.$drie.'" value = "nvt">
        <label class = "radiotoggle" for = "radio-'.$drie.'"><span class = "radio">N.v.t</span></label>
    </div>
  </div>';
  $een++;
  $twee++;
  $drie++;
}
$werkplekinspectie .= '
</div>';
}

Но радиокнопки, расположенные ниже, запускают первую группу радиокнопок. Что я делаю неправильно?

как насчет создания счетной переменной вне цикла (ов), в котором вы генерируете HTML? будет менее привлекательно, если вы будете увеличивать его перед каждым использованием; однако вы сможете управлять только одной переменной.

Doug 28.12.2018 16:57
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
1
56
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Вам было бы лучше с 1 счетчиком и каждый раз добавлять соответствующее смещение ...

$offsetID = 1;

а потом

<div class = "container text-right">
    <input type = "radio" name = "group'.$een.'" id = "radio-'.$offsetID.'" value = "ok">
    <label class = "radiotoggle" for = "radio-'.$een.'"><span class = "radio">Ok</span></label>
    <input type = "radio" name = "group'.$een.'" id = "radio-'.($offsetID+1).'" value = "fout">
    <label class = "radiotoggle" for = "radio-'.$twee.'"><span class = "radio">Fout</span></label>
    <input type = "radio" name = "group'.$een.'" id = "radio-'.($offsetID+2).'" value = "nvt">
    <label class = "radiotoggle" for = "radio-'.$drie.'"><span class = "radio">N.v.t</span></label>
</div>

затем добавляйте к нему 3 каждый раз ...

$offsetID+=3;

С вашей текущей настройкой - вы должны добавить 3 к каждому счетчику, а не просто увеличивать их ...

  $een+=3;
  $twee+=3;
  $drie+=3;

Мой PHP довольно ржавый, но вы можете справиться с этим с помощью одной переменной счетчика, не беспокоясь об увеличении по разделам ...

$counter = 0;

$arr = array(1, 2, 3, 4);

foreach ($arr as &$value) {
    print '<h2>'. $value . '</h2>'. $counter++ . ' ' . $counter++ . ' ' . $counter++;
}

Другие вопросы по теме