Projets Laravel France

Insertion donnees mysql: formulaire de sondage

  • Avatar de banaSANKARE
    Membre depuis :
    25/07/2018
    Messages :
    2

    Bonjour à tous le monde,
    je demande votre aide et c'est hyper urgent
    le concepte:
    je doit concevoir une application de " recueil de feedback d'experience candidats " avec laravel 5.6
    donc j'ai un formulaire avec plusieurs questions que le candidat doit repondre et coté admin j'aurai un dashboard avec des charts pour evaluer les donnees issu du formulaire.
    Dans ma base de donnees j'ai 3 tables: table candidat, table questionnaire et table reponses

    Voila mon probleme:
    quand j'insere les donnees du formulaire dans ma base de donnees la derniere reponse du candidat ecrase tout les autre reponse et je me retrouve avec une seule reponse :(

    ma migration table questionnaire

    <?php

    use Illuminate\Database\Migrations\Migration;
    use Illuminate\Database\Schema\Blueprint;

    class CreateQuestionsTable extends Migration {

    /
    Run the migrations.

    @return void
    /
    public function up()
    {
    Schema::create('questions', function(Blueprint $table)
    {
    $table->integer('id_question', true);
    $table->string('libelle_question')->nullable();
    $table->dateTime('created_at')->nullable();
    $table->softDeletes();
    $table->integer('id_candidat')->index('id_candidat');
    });
    }

    /

    Reverse the migrations.

    @return void
    /
    public function down()
    {
    Schema::drop('questions');
    }

    }

    le modele

    <?php

    namespace App;

    use Illuminate\Database\Eloquent\Model;

    class Question extends Model
    {
    protected $fillable = [
    'libelle_candidat'
    ];
    }

    et le controller

    <?php

    namespace App\Http\Controllers;

    use Request;
    use App\question;

    class questionController extends Controller
    {
    /
    Display a listing of the resource.

    @return \Illuminate\Http\Response
    /
    public function index()
    {
    //
    }

    /

    Show the form for creating a new resource.

    @return \Illuminate\Http\Response
    /
    public function create()
    {
    //
    }

    /
    Store a newly created resource in storage.

    @param \Illuminate\Http\Request $request
    @return \Illuminate\Http\Response
    */
    public function store(Request $request)
    {
    question::create(Request::all());

    return 'reussi';
    }

    /*
    Display the specified resource.

    @param int $id
    @return \Illuminate\Http\Response
    /
    public function show($id)
    {
    //
    }

    /

    Show the form for editing the specified resource.

    @param int $id
    @return \Illuminate\Http\Response
    */
    public function edit($id)
    {
    //
    }

    /
    Update the specified resource in storage.

    @param \Illuminate\Http\Request $request
    @param int $id
    @return \Illuminate\Http\Response
    /
    public function update(Request $request, $id)
    {
    //
    }

    /

    Remove the specified resource from storage.

    @param int $id
    @return \Illuminate\Http\Response
    */
    public function destroy($id)
    {
    //
    }
    }

    donc tout ce que je veu c'est inserer tous les reponses en meme temps dans ma base
    MERCI.

  • Avatar de bestmomo
    Membre depuis :
    07/04/2013
    Messages :
    2285

    Bonjour,

    Comment il est concu ce formulaire ?

  • Avatar de banaSANKARE
    Membre depuis :
    25/07/2018
    Messages :
    2
    <form role="form" action="store" method="post">
    @csrf

    <div class="panel panel-primary setup-content" id="step-1">
    <div class="panel-heading">
    <h3 class="panel-title"> Quelle est votre appréciation concernant ?</h3>
    </div>
    <div class="panel-body">

    <div class="form-group">
    <label class="control-label"> 1. les informations reçues en amont du processus de recrutement sur les différentes étapes de celui-ci</label>
    <div class="form-check">
    <label class="form-check-label">
    <input type="checkbox" class="form-check-input" name="information_recues" value="Tressatisfaisant">Tres satisfaisant</label>
    </div>
    <div class="form-check">
    <label class="form-check-label">
    <input type="checkbox" class="form-check-input" name="information_recues" value="Satisfaisant">Satisfaisant</label>
    </div>
    <div class="form-check">
    <label class="form-check-label">
    <input type="checkbox" class="form-check-input" name="information_recues" value="Passatisfaisant">Pas satisfaisant</label>
    </div>
    </div>
    <div class="form-group">
    <label class="control-label"> 2. la qualité du discours tenu par le chargé de recrutement</label>

    <div class="form-check">
    <label class="form-check-label">
    <input type="checkbox" class="form-check-input" name="qualite_discours" value="Tressatisfaisant">Tres satisfaisant</label>
    </div>
    <div class="form-check">
    <label class="form-check-label">
    <input type="checkbox" class="form-check-input" name="qualite_discours" value="Satisfaisant">Satisfaisant</label>
    </div>
    <div class="form-check">
    <label class="form-check-label">
    <input type="checkbox" class="form-check-input" name="qualite_discours" value="Passatisfaisant">Pas satisfaisant</label>
    </div>
    </div>
    </form>
  • Avatar de ziedTriki
    Membre depuis :
    01/05/2017
    Messages :
    2

    Bonjour,

    essayes de changer le clé primaire de table questions :

    $table->integer('id_question', true); => $table->increments('id_question');

Vous ne pouvez pas répondre à ce sujet.