0
votes

Pourquoi les données ne stockent pas avec la méthode du contrôleur @ Store

J'ai utilisé le magasin de méthodes d'un contrôleur et des données ne stocke pas dans ma base de données.

Je veux insérer nom_article code>, photo_article code>, type , description_article code> dans trois tables d'un formulaire en HTML natif, mais je ne sais pas quelle action à faire. p>

J'utilise Articlecontroller où il y a une méthode Store code> et trois modèles de table. p> xxx pré>

Voici mes tables de la base de données: p> xxx pré>

mon Formulaire HTML: P>

<?php
  namespace App;
  use Illuminate\Database\Eloquent\Model;

  class article extends Model {
    public $table = 'article';
    public $primaryKey ='ID_ARTICLE';
    return $this->belongsTo('photo_articles');
  }


2 commentaires

Pouvez-vous ajouter le code de votre article modèle?


Ceci est mon modèle d'article: Betailto ('photo_articles'); }


4 Réponses :


0
votes

ce que je vois de votre forme code> est que vous n'avez pas mis d'action en elle, vous venez de le laisser vide:

<form method="post" action="" class="contact_form text-center" id="contact_form">


1 commentaires

Screen Shot montre qu'il m'a redirigé vers "Addarticle" sans erreur montrant l'URL que j'ai posté Wich signifie qu'il a utilisé le magasin de fonctions, mais rien ne stocke dans la base de données



0
votes

Yaa Vous avez clairement manqué le jeton CSRF à passer avec la forme. Si vous souhaitez généraliser n'importe quel formulaire à Laravel, vous devez transmettre le jeton CSRF.

Utiliser @csrf et la lame transmettront le jeton unique au formulaire Soumettre P>

https://laravel.com/docs/5.8/csrf p>

Exemple: P>

<form method="post" action="" class="contact_form text-center" id="contact_form">
    @csrf
    <div class="">
        <div class="col-lg-4">
            <input type="text" class="contact_input" name="NOM_ARTICLE" placeholder="Nom d'article" required="required">
        </div>
        <br/>
        <div class="col-lg-4">
            <input type="text" class="contact_input" name="ID_TYPE" placeholder="Type d'article" required="required">
        </div>
        <div>
            <input type="hidden" name="MAX_FILE_SIZE" value="250000"/>
            <input type="file" class="contact_input" name="PHOTO_ARTICLE" placeholder="Capture de votre article" name="fic" size=50 required="required"/>
            <!--  <input type="submit" value="Envoyer" /> -->
        </div>

    </div>
    <textarea class="contact_textarea contact_input" name="DESCRIPTION_ARTICLE" placeholder="Description"
              required="required"></textarea>
    <button class="contact_button" type="submit">Valider!</button>
</form>


0 commentaires

0
votes

Vous devez mettre l'action en fonction du modèle de ressource.

Votre web.php strong> p> xxx pré>

Votre formulaire: p> xxx pré>

Vous devez inclure le @csrf code> directive lame, également. p>

dans votre contrôleur: p> xxx pré>

Vous ajoutez le photo_article code> à l'article mais vous n'avez pas cette colonne dans votre tableau d'articles comme indiqué, il n'a donc pas de sens d'utiliser la ligne ci-dessous: P>

$article->LABEL_TYPE = $request->LABEL_TYPE;


1 commentaires

Merci d'avoir répondu à la première fois, je veux juste ajouter que je dois ajouter des données du formulaire dans trois tables en fonction des trois modèles que j'ai créés.



0
votes

Essayez ceci: j'espère que cela vous aidera.

contrôleur xxx

Créer trois modèles selon vos datables et coller ce code Pour tous. xxx


0 commentaires