Bonjour,

J'ai un formulaire sur mon layout, j'arrive à gérer le traitement quand je suis sur la première page (controller homes) mais si je change de page (ex contact) je ne parviens plus à gérer ce formulaire.

A quel endroit dois-je placer ma traitement sans devoir gérer ce formulaire dans tous les controller ?

En espérant avoir été assez clair.

D'avance merci.

12 réponses


Gyuki
Réponse acceptée

Bonjour,

Ne peux tu pas definir la destination (action) de ton formulaire?

Je m'explique, tu affiche ton formulaire dans n'importe quel page que tu souhaite, mais au moment de la soumission du formulaire, tu le fait pointer vers le controlleur User (du moins le controller qui gere la connexion, deconnexion, inscription, etc), si l'utilisateur arrive a se connecter car tout est valide, alors tu le redirige vers sa source. S'il viens de la page contact, il essaye de se connecter, le serveur l'envois sur User, fait les test et si tout est ok, le renvois sur contact en etant connecté.

La video que je te parlais est la video Tutoriel TP2 - Gestion des utilisateurs a la 54:56 minutes environ. plus ou moins.

Vers quelle action pointe ton formulaire ?

Msappdem
Auteur

Voila les infos :

[controller] => homes
[action] => index

Bonjour,

Tu utilise quoi? Un framework ou un dev perso?
Si c'est cakePHP, va dans la formation que Graff à fait, il y a un endroit ou il fait une top bar avec une connexion. Top bar commun a toute les page.

Msappdem
Auteur

C'est perso (selon le tuto du mvc) mais d'après ce que j'ai compris c'est presque identique à cakePHP en tout cas sur le principe. Je vais regarder. Merci.

Si tu formulaire pointe vers la page d'accueil (et donc le controlleur home/index), c'est normal qu'il ne fonctionne pas

Msappdem
Auteur

justement je sais que cela est normal mais je ne sais pas ou le placer (le traitement) qu'il soit pris en compte depuis n'importe quel page. (Gyuki, je n'ai pas encore regardé)

Msappdem
Auteur

Désolé mais je ne trouve pas la vidéo concernant la cette topbar, une idée pour la retrouvé plus facilement ?

Msappdem
Auteur

Je remonte le sujet au cas ou quelqu'un aurait une idée ?

L'action de ton formulaire doit pointer vers la méthode contact de ton controller... logique

Msappdem
Auteur

cela ne fonctionnera pas mieux!
le formulaire est placé sur le layout (default) donc il est présent sur toutes les pages.
le controller avec lequel je gère la soumission est homesController qui gère l'affichage de ma première page.
mais si je change de page (donc de controller, ex: contact) le formulaire est toujours présent car sur le layout, mais l'action ne peux plus être gérer par homesController mais devrait être alors à ce moment la gérer par contactController... logique

Ce que je cherche à faire c'est pouvoir gérer la soumission de ce formulaire depuis n'importe quel controller!

Msappdem
Auteur

Je ne suis pas membre premium c'est pour cela que je n'ai pas vu la vidéo.

Ceci dit tu m'as mis sur la piste et je crois que c'est bon, j'ai effectivement précisé le controller dans le formulaire !

Un grand merci.