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 :

header:location redirection immédiate


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de SPACHFR
    Profil pro
    Paaaaaa
    Inscrit en
    Février 2004
    Messages
    557
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paaaaaa

    Informations forums :
    Inscription : Février 2004
    Messages : 557
    Par défaut header:location redirection immédiate
    Bonjour,

    Je débute en PHP et j’essaie de trouver une solution à ce petit problème.

    J'utilise Phpmailer afin de générer un email suite à la saisie d'un formulaire de contact. L’email envoyé possède une pièce attachée assez lourde (4Mo) ce qui prend plusieurs secondes à émettre l'email.

    Afin de ne pas resté bloqué sur le formulaire, j'ai placé dans mon code un header:location juste avant la génération de l'email pensant que la redirection ce ferait immédiatement.

    Cependant cela n'a pas d'effet, la redirection et toujours faite à l'issue de l'envoie du mail.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $contactDAO->addContact($contact);      // ajout du contact
    header("location:contact-success.html");  // redirection
    $contactDAO->sendEmail($contact);        // envoie email

    Pourriez-vous m'expliquer comment faire afin que la redirection soit réalisée immédiatement et l'email généré par la suite pour ne pas avoir ce délai de plusieurs secondes.

    Merci.

  2. #2
    Membre émérite Avatar de tdutrion
    Homme Profil pro
    Architecte technique
    Inscrit en
    Février 2009
    Messages
    561
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 561
    Par défaut
    Bonjour,

    Seul ob_start et ob_end_flush peuvent te permettre d'envoyer le header en plein code, mais si tu rediriges tu ne passeras pas dans le code en dessous (envoi du mail).

    Tu devrais plutot envisager soit une requête ajax asynchrone, soit un script en tâche de fond.

  3. #3
    Membre éclairé Avatar de SPACHFR
    Profil pro
    Paaaaaa
    Inscrit en
    Février 2004
    Messages
    557
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paaaaaa

    Informations forums :
    Inscription : Février 2004
    Messages : 557
    Par défaut
    Merci pour cette réponse.
    Deux pistes à explorer, je devrai trouver une solution

    Merci

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

Discussions similaires

  1. Boucle de redirection header Location
    Par midnnight dans le forum Langage
    Réponses: 11
    Dernier message: 15/07/2009, 17h34
  2. redirection header("Location :")
    Par Angelik dans le forum Langage
    Réponses: 2
    Dernier message: 02/06/2008, 03h43
  3. Réponses: 3
    Dernier message: 28/01/2008, 22h18
  4. Erreur de redirection (header("location /page.php");)
    Par pierrot10 dans le forum Langage
    Réponses: 6
    Dernier message: 16/08/2006, 08h43
  5. Problème redirection header ('location:
    Par Jiraiya42 dans le forum Langage
    Réponses: 1
    Dernier message: 24/06/2006, 17h08

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