Laravel: сохранение данных из нескольких групп переключателей с разными именами - PullRequest
0 голосов
/ 07 июня 2019

Я абсолютно новичок в laravel, и мой вопрос: возможно ли сохранить данные в базу данных из нескольких групп переключателей с разными именами.

My Blade (часть if):

@foreach($pol1 as $meczes)
    <strong>{{ $meczes->mecz }}</strong><br /> 
    <input type="radio" name="s" value="<?php echo $meczes->mecz ?> TYP: 1  KURS: <?php echo $p200 ?>"> <strong>1</strong>  - {{$p200}} 
    <input type="radio" name="s" value="<?php echo $meczes->mecz ?> TYP: X  KURS: <?php echo $p4 ?>"> <strong>X</strong>  - {{$p4}} 
    <input type="radio" name="s" value="<?php echo $meczes->mecz ?> TYP: 2  KURS: <?php echo $p6 ?>"> <strong>2</strong>  - {{$p6}} 
    <input type="radio" name="s" value="<?php echo $meczes->mecz ?> TYP: 10  KURS: <?php echo $p201 ?>"> <strong>10</strong>  - {{$p201}} 
    <input type="radio" name="s" value="<?php echo $meczes->mecz ?> TYP: 02  KURS: <?php echo $p201 ?>"> <strong>02</strong>  - {{$p201}} 
    </br>
@endforeach

@foreach($pol2 as $meczes)    
    <strong>{{ $meczes->mecz }}</strong><br> 
    <input type="radio" name="s1" value="<?php echo $meczes->mecz ?> TYP: 1  KURS: <?php echo $p101 ?>"> <strong>1</strong>  - {{$p101}} 
    <input type="radio" name="s1" value="<?php echo $meczes->mecz ?> TYP: X  KURS: <?php echo $p103 ?>"> <strong>X</strong>  - {{$p103}} 
    <input type="radio" name="s1" value="<?php echo $meczes->mecz ?> TYP: 2  KURS: <?php echo $p204 ?>"> <strong>2</strong>  - {{$p204}} 
    <input type="radio" name="s1" value="<?php echo $meczes->mecz ?> TYP: 10  KURS: <?php echo $p200 ?>"> <strong>10</strong>  - {{$p200}} 
    <input type="radio" name="s1" value="<?php echo $meczes->mecz ?> TYP: 02  KURS: <?php echo $p201 ?>"> <strong>02</strong>  - {{$p201}}  
    </br>
@endforeach

@foreach($pol3 as $meczes)
    <strong>{{ $meczes->mecz }}</strong><br> 
    <input type="radio" name="s2" value="<?php echo $meczes->mecz ?> TYP: 1  KURS: <?php echo $p204 ?>"> <strong>1</strong>  - {{$p204}} 
    <input type="radio" name="s2" value="<?php echo $meczes->mecz ?> TYP: X  KURS: <?php echo $p4 ?>"> <strong>X</strong>  - {{$p4}} 
    <input type="radio" name="s2" value="<?php echo $meczes->mecz ?> TYP: 2  KURS: <?php echo $p201 ?>"> <strong>2</strong>  - {{$p201}} 
    <input type="radio" name="s2" value="<?php echo $meczes->mecz ?> TYP: 10  KURS: <?php echo $p3 ?>"> <strong>10</strong>  - {{$p3}} 
    <input type="radio" name="s2" value="<?php echo $meczes->mecz ?> TYP: 02  KURS: <?php echo $p1 ?>"> <strong>02</strong>  - {{$p1}} 
    </br>
@endforeach

Часть моего контроллера:

if (isset($_POST['s'])) {
    $s=$_POST['s'];
} else {
    $s="1";
} //1

if (isset($_POST['s1'])) {
    $s1=$_POST['s1'];
} else {
    $s1="1";
} //2

И мой вопрос заключается в том, как передать значение каждой выбранной кнопки из группы (s, s1 и т. Д.) В таблицу,каждая новая строка (таблица с только id и значением в качестве столбцов).

Я предполагаю, что когда пользователь выберет одну опцию из группы 's' и опцию из группы 's1', значение этих кнопок будет отправлено в базу данных.Как должна быть записана функция хранения?Будет ли полезен какой-либо цикл?

(Sidenote, у меня ровно 35 из этих групп кнопок, и я просто хотел сохранить данные из них в базе данных при выборе после нажатия кнопки).

Я знаю, что это немного сложно, ноБуду благодарен за любую помощь.

1 Ответ

0 голосов
/ 07 июня 2019

Вместо того, чтобы каждая радиокнопка имела отдельное имя, вы можете установить каждое имя в сгруппированный массив. Например:

<input type="radio" name="selections[s2]" value="<?php echo $meczes->mecz ?> TYP: 1  KURS: <?php echo $p204 ?>"> <strong>1</strong>  - {{$p204}}

Когда ваша форма отправлена, это установит запросы selections ключ / значение массива.

С этого момента вы можете циклически перебирать каждый выбор и сохранять его в своей модели (при использовании eloquent):

foreach (request('selections') as $key => $value) {
    Model::create([
        'key' => $key,
        'value' => $value
    ]);
}

Этот ответ должен объяснить принцип достижения этой цели, а не окончательный ответ (поскольку я не знаю структуру вашего приложения). Там могут быть некоторые отношения.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...