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 J'utilise Articlecontroller où il y a une méthode Store code> et trois modèles de table. p> Voici mes tables de la base de données: p> mon Formulaire HTML: P> 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> <?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class article extends Model {
public $table = 'article';
public $primaryKey ='ID_ARTICLE';
return $this->belongsTo('photo_articles');
}
4 Réponses :
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">
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
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>
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>
Vous devez mettre l'action en fonction du modèle de ressource.
Votre web.php strong> p> Votre formulaire: p> Vous devez inclure le dans votre contrôleur: p> Vous ajoutez le @csrf code> directive lame, également. p> 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;
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.
Essayez ceci: j'espère que cela vous aidera.
contrôleur strong> p> Créer trois modèles selon vos datables et coller ce code Pour tous. p>
Pouvez-vous ajouter le code de votre
article code> modèle?Ceci est mon modèle d'article: PHP Application d'espace de noms; Utilisez illuminate \ base de données \ Eloquent \ Model; Article de classe étend le modèle {public $ Table = 'Article'; Public $ primickeykey = 'id_article'; Retour $ ceci-> Betailto ('photo_articles'); }