Besoin d'aide ?

Plusieurs input radio

  • Avatar de anonymus
    Membre depuis :
    24/08/2019
    Messages :
    8

    Bonjour,

    J'ai un formulaire avec plusieurs input radio, mais ces input radio s'affichent seulement si la question est une question à choix unique.
    J'ai donc :

    • une table questions : id, enonce, typeQuestion
    • une table reponses : id, intitule, questions_id
    • une table enregistrements_resultats : id, questions_id, reponse, identifiantResultat

    La table enregistrements_resultats permet d'enregistrer les réponses de la personne qui a rempli le formulaire et il va pouvoir retrouver ses réponses grâce un nombre random attribué (identifiantResultat)

    Voici ma vue :

    @foreach($questions_reponses as $question_reponse)
    <div class="card">
    <div class="card-header">
    Question {{$question_reponse->id}}/{{$questions->count()}}
    </div>
    <div class="card-body">
    <h5 class="card-title">{{$question_reponse->enonce}}</h5>
    <p class="card-text">
    @if($question_reponse->typeQuestion == 'A')
    <select name="reponse" class="custom-select" required>
    <option selected>Choisissez votre réponse</option>
    @foreach($question_reponse->reponses as $reponse)
    <option value="{{$reponse->id}}">{{$reponse->intitule}}</option>
    @endforeach
    </select>
    @elseif ($question_reponse->typeQuestion == 'B')
    @if($question_reponse->id == '1')
    <input type="email" class="form-control" name="reponse" required>
    @elseif($question_reponse->id == '2')
    <input type="number" class="form-control" name="reponse" required>
    @else
    <input type="text" class="form-control" name="reponse" required>
    @endif
    @else
    @for($i = 1; $i < 6; $i++)
    <div class="form-check">
    <input type="radio" class="form-check-input" name="reponse" required value="{{$i}}">
    <label class="form-check-label" for="{{$i}}">
    {{$i}}
    </label>
    </div>
    @endfor
    @endif
    </p>
    </div>
    </div>
    @endforeach

    Le problème c'est que j'attribué le même name à tous les input radio donc ça ne marche pas vraiment... Comment faire pour différencier les input radio pour chaque question concernée ? Peut-être que mes tables ne sont pas bien faites...
    Au final, j'aimerais enregistrer toutes les réponses données (champ reponse) pour chaque utilisateur dans cette table enregistrements_resultats.

    Merci de votre aide !

  • Avatar de pierrocknroll
    Membre depuis :
    12/08/2019
    Messages :
    7

    Je nommerai mes inputs radio avec l'id de la question : reponse[$question->id]

  • Avatar de anonymus
    Membre depuis :
    24/08/2019
    Messages :
    8

    Ah oui ok super merci beaucoup !

Vous ne pouvez pas répondre à ce sujet.