IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

redirection après validation formulaire


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Septembre 2008
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 221
    Points : 104
    Points
    104
    Par défaut redirection après validation formulaire
    Bonjour,

    Je suis en train de réaliser un site et je viens de finir mon formulaire. L'utilisateur remplit les champs, clique sur envoyer et je recois un mail avec les informations rentrés. Quand il clique sur envoyé et que tout est bon, ça envoi un mail et ca ouvre une autre page qui dit "message bien envoyé". Seulement je voudrais soit :
    - pouvoir ouvrir une pop up avec un message qui dit "message bien envoyé" et redirigé la page vers une autre (par exemple celle la page d'accueil)
    _ dès que "message envoyé" s'affiche sur une autre page, genre quelques secondes après il est redirigé

    J'ai vu la fonction header('Location: http://mon site'); mais j'ai une erreur qui me dit Warning: Cannot modify header information - headers already sent by

    Je l'avais mis dans la page php qui gère mon formulaire dans un if mais ça ne fonctionne pas. Si je la met juste avant la balise <php, dans ca cas, il redifirige directement après que l'on valide le formulaire sans meme afficher le message

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if (mail($cible, $subject, $message, $headers))
    			{
     
    				echo '<p>'.$message_envoye.'</p>'."\n";
     
     
    			}
    Merci d'avance

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 496
    Points : 585
    Points
    585
    Par défaut
    Salut,
    Citation Envoyé par princesse95 Voir le message
    - pouvoir ouvrir une pop up avec un message qui dit "message bien envoyé" et redirigé la page vers une autre (par exemple celle la page d'accueil)
    _ dès que "message envoyé" s'affiche sur une autre page, genre quelques secondes après il est redirigé
    tu pourrais afficher le message sur ta page d'accueil, après la redirection, sinon que ce soit pour le pop-up ou pour la redirection après qlques secondes, ce sera plutôt du javascript qu'il faudra utiliser.

  3. #3
    Membre régulier
    Inscrit en
    Septembre 2008
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 221
    Points : 104
    Points
    104
    Par défaut
    Je vais donc me lancer dans le javascript. Je connais un peu le javascript, mais est-il possible de mélanger du php et du javascript dans la même page?

    Est-il possible de faire une redirection après que le formulaire soit envoyé, et en même temps ouvrir une pop-up?

    Merci

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 496
    Points : 585
    Points
    585
    Par défaut
    pas de problème pour mélanger les 2.. même chose pour ouvrir le pop-up et ensuite faire la redirection

  5. #5
    Membre régulier
    Inscrit en
    Septembre 2008
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 221
    Points : 104
    Points
    104
    Par défaut
    Je souhaite donc réaliser quelque chose. Je remplis le formulaire, quand je clique sur OK, un pop up s'ouvre avec le message "message bien envoyé" et redirige vers accueil.html
    Par contre si l'utilisateur a désactivé javascript ou ne dispose pas de javascript je souhaiterais qu'il puisse avoir un message sur une page normal et qu'il soit redirigé sur la page accueil.

    Je débute et je trouve pleins de choses sur internet. Est-il possible de m'éclairer dans les étapes. Il n'est bien évidemment pas question d'avoir le code tout fait. Je souhaite juste que l'on m'éclaire la dessus

    Merci beaucoup

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2004
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 496
    Points : 585
    Points
    585
    Par défaut
    pour ouvrir un pop-up, je pense que la commande est window.open..., pour la redirection c'est document.location.href.. avec un timer pour attendre les qlqes secondes (j'ai bien dit je pense, pour être sûr, forum Javascript )

  7. #7
    Membre éprouvé Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Points : 948
    Points
    948
    Par défaut
    Ca marcherait sans aucune doute =)

    Mais je crois que Google (pour le référencement) n'aime pas les redirection en javascript... Enfin si je me souviens bien ! Sinon ben ca marcherait !
    ►Ne pas oublier le

  8. #8
    Membre régulier
    Inscrit en
    Septembre 2008
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 221
    Points : 104
    Points
    104
    Par défaut
    Et en fait les commandes pour ma redirection et mon ouverture de pop up doivent se faire dans mon fichier formulaire.php je pense?

    J'ai réalisé un if... comme écrit au début de la discussion.
    L'ouverture du pop up et la redirection doit se faire au même endroit j'imagine? Si ca envoie le formulaire , alors ca ouvre pop up et du coup ca redirige..
    En gros c'est ca?

    Je recherche le code, j'avance et je dirai ce que ça donne

    Merci pour votre aide

  9. #9
    Membre éprouvé Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Points : 948
    Points
    948
    Par défaut
    Ben en basique quoi je sais pas comment tu souhaite le parametrer il y a cette possibilité :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<script language='Javascript'> window.open(page,'nom_popup','menubar=no, status=no, scrollbars=no, menubar=no, width=200, height=100')</script>";
    Ca c'est une ouverture de pop up

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<script language='Javascript'>document.location='index.php'</script>";
    Ca c'est une redirection.

    Le fait d'ouvrir un pop up ne fait pas redirection en soit il ouvre juste une page.

    Pour l'attente je ne sais pas faire
    ►Ne pas oublier le

  10. #10
    Membre régulier
    Inscrit en
    Septembre 2008
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 221
    Points : 104
    Points
    104
    Par défaut
    Merci pour le code.
    La redirection marche nickel, par contre la pop up ne s'ouvre pas. Est-ce du au fait que je l'ai mal placé dans le code?
    Pour l"instant, je teste d'ouvrir la pop up qui ouvre une page. Après je ferai ouvrir une popup mais qui contient juste un message.
    Dans tous les cas, j'essaye pour l'instant de la faire fonctionner avec une url.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    if (mail($cible, $subject, $message, $headers))
    			{
     
    				echo '<p>'.$message_envoye.'</p>'."\n";
    				echo "<script language='Javascript'> window.open('http://mon_site/contact.html','validation_formulaire','menubar=no, status=no, scrollbars=no, menubar=no, width=200, height=100')</script>";
    				echo "<script language='Javascript'>document.location='http://mon_site/accueil.html'</script>";
     
    			}
    Je mets du temps mais ça finira par fonctionner.

    Merci

  11. #11
    Membre éprouvé Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Points : 948
    Points
    948
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<script language='Javascript'> window.open('http://mon_site/contact.html','validation_formulaire')</script>";
    Je vais juste simplifier tout ça ^^ Sinon je pense qu'il est bien placé^^
    ►Ne pas oublier le

  12. #12
    Membre régulier
    Inscrit en
    Septembre 2008
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 221
    Points : 104
    Points
    104
    Par défaut
    Merci beaucoup, ca fonctionne enfin pas complètement Je m'explique
    J'ai essayé de juste ouvrir la pop up donc juste avec cette ligne de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<script language='Javascript'> window.open('http://amandinegabelle.free.fr/contact.html','validation_formulaire')</script>";
    La pop up s'ouvre bien

    J'ai essayé en mettant juste le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<script language='Javascript'>document.location='http://amandinegabelle.free.fr/accueil.html'</script>";
    et la redirection marche nickel aussi

    Par contre dès que je mets les 2lignes de code ensemble, seul la redirection fonctionne
    Est-ce normal? Cela pourrait etre du à quoi?

    Merci encore

  13. #13
    Membre éprouvé Avatar de obito
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2008
    Messages
    773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2008
    Messages : 773
    Points : 948
    Points
    948
    Par défaut
    Si le window.open est avant la redirection je ne sais pas trop pourquoi cela la redirection se fait mais n'ouvre pas le pop up... La j'avoue que je ne sais pas trop .

    Au pire dans la page redirigé tu peux ouvrir le pop up mais ca voudrait dire qu'il faudrait faire des test sur quand ouvrir le pop up et aussi la récupération d'information... Bref un peu la galère, non franchement je ne sais pas pourquoi
    ►Ne pas oublier le

  14. #14
    Membre régulier
    Inscrit en
    Septembre 2008
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 221
    Points : 104
    Points
    104
    Par défaut
    Merci quand même, je vais chercher je finirai peut être par trouver.
    Je mettrai la solution dès que je l'ai trouvé

  15. #15
    Membre régulier
    Inscrit en
    Septembre 2008
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 221
    Points : 104
    Points
    104
    Par défaut
    J'ai un souci et là j'avoue être perdu. Depuis que j'ai essayé de placer la ligne de code avec window.open avant la redirection, j'ai un button qui s'est crée sur ma page de formulaire. Même en supprimant les 2lignes, ce bouton reste.
    Quelqu'un a déjà eu ce problème??

    Je n'ai rien touché à la page formulaire.html

    Merci de votre aide

  16. #16
    Membre régulier
    Inscrit en
    Septembre 2008
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 221
    Points : 104
    Points
    104
    Par défaut
    Alors j'ai finalement trouvé. Je mets donc les deux lignes de code qui m'ont permis
    - d'ouvrir une popup si le message du formulaire est envoyé (cest une image que j'ai mis)
    - de faire une redirection vers la page d'accueil

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    echo "<script language='Javascript'> window.open('/pictures/contact/popup.jpg','validation_formulaire','width=369,height=150','resizable=no','scrollbar=no')</script>";
                    echo "<script language='Javascript'>document.location='http://mon_site/accueil.html'</script>";
    ca aidera peut etre quelqu'un

    Je ferme donc le sujet
    Merci pour votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Redirection après validation formulaire
    Par valmeras dans le forum Langage
    Réponses: 4
    Dernier message: 26/03/2014, 14h18
  2. [2.x] Redirection après validation de formulaire
    Par vivgar dans le forum Symfony
    Réponses: 3
    Dernier message: 21/02/2014, 16h44
  3. redirection apres validation formulaire
    Par liniver dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 24/11/2013, 23h34
  4. [ZF 1.11] Afficher popup javascript après validation formulaire et avant redirection
    Par absot dans le forum Zend Framework
    Réponses: 1
    Dernier message: 19/12/2011, 11h15
  5. [SP-2010] redirection après validation formulaire.
    Par doctori dans le forum SharePoint
    Réponses: 15
    Dernier message: 20/07/2011, 14h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo