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 :

Fonction mail assez lente


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Cobol sur Mainframe et Unix AIX
    Inscrit en
    Mars 2012
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Cobol sur Mainframe et Unix AIX

    Informations forums :
    Inscription : Mars 2012
    Messages : 196
    Points : 69
    Points
    69
    Par défaut Fonction mail assez lente
    Bonjour,

    J'ai le bout de code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    function Envoi_Mail_Err404() {
    	/**
    	 * Calculer le temps d'execution d'un script
    	 */
     
    	// relever le point de départ
    	$timestart=microtime(true);
     
    	$email_webmaster = "monadresse@fai.com";
    	$email_sujet = 'Erreur 404 sur le site sur le site du XXX';
    	$email_message = "<html><body>" .
    			"<div id='banniere'> <?php require_once '../../core/html/banniere.php'; ?> </div>" .
    			"<h1>Erreur 404 sur le site sur le site du XXX</h1>".
    			"<br>" .
    			"Une erreur 404 vient de se produire sur le site web du XXX ".
    			"<br>" .
    			"Voici des informations sur ce site:".
    			"<br>" .
    			"Heure: ".date('d/m/Y H:i').
    			"<br>" .
    			"Page concernée: ".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'].
    			"<br>" .
    			"Page précédente: ".$_SERVER['HTTP_REFERER']." (si vide = connexion direct)".
    			"<br>" .
    			"User agent: ".$_SERVER['HTTP_USER_AGENT'].
    			"</body></html>";
     
    	@mail($email_webmaster, 
    			$email_sujet, 
    			$email_message, 
    			"From: $email_webmaster\r\n".
    			"Reply-To: $email_webmaster\r\n".
    			"Content-Type: text/html; charset=\"iso-8859-1\"\r\n");
    	//Fin du code PHP
    	$timeend=microtime(true);
    	$time=$timeend-$timestart;
     
    	//Afficher le temps d'éxecution
    	$page_load_time = number_format($time, 3);
    	echo "Debut du script: ".date("H:i:s", $timestart);
    	echo "<br>Fin du script: ".date("H:i:s", $timeend);
    	echo "<br>Script execute en " . $page_load_time . " sec";
    }
    La fonction mail() dure environ 21s. Est-ce normal ?

    Voici les traces
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Erreur 404
     
    Cette page n'existe pas !!!!
     
    Un mail a été envoyé au webmaster
    Debut du script: 21:40:35
    Fin du script: 21:40:56
    Script execute en 21.142 sec
    Merci pour votre aide.

  2. #2
    Membre du Club
    Homme Profil pro
    Cobol sur Mainframe et Unix AIX
    Inscrit en
    Mars 2012
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Cobol sur Mainframe et Unix AIX

    Informations forums :
    Inscription : Mars 2012
    Messages : 196
    Points : 69
    Points
    69
    Par défaut
    pas d'idée pourquoi la fonction mail() prend autant de temps ?

  3. #3
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Je ne vois pas de raison.
    Cependant, tu fais deux choses entre les 2 timers : construire le message et envoyer le mail. Vu que ta construction de message est un chouia bizarre (avec un require), il serait intéressant d'ajouter un timer intermédiaire juste avant l'appel à mail pour voir si c'est vraiment l'envoi du mail qui prend autant de temps.
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  4. #4
    Membre du Club
    Homme Profil pro
    Cobol sur Mainframe et Unix AIX
    Inscrit en
    Mars 2012
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Cobol sur Mainframe et Unix AIX

    Informations forums :
    Inscription : Mars 2012
    Messages : 196
    Points : 69
    Points
    69
    Par défaut
    Dans le require, je ne fais quasi rien, juste récupérer le logos du site et le libellé du site.
    Mais je le ferai ce soir en rentrant.
    Je testerai également en déployant sur un site internet car là, actuellement, je suis en local.

    Merci pour ton coup de main.

  5. #5
    Membre du Club
    Homme Profil pro
    Cobol sur Mainframe et Unix AIX
    Inscrit en
    Mars 2012
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Cobol sur Mainframe et Unix AIX

    Informations forums :
    Inscription : Mars 2012
    Messages : 196
    Points : 69
    Points
    69
    Par défaut
    Avec la fonction mail mis en commentaire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Un mail a été envoyé au webmaster
    Début du script - Avant construire message: 18:03:37
    Après avoir construit Message: 18:03:37Debut du script: 18:03:37
    Fin du script: 18:03:37
    Script execute en 0.043 sec
    En la réactivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Un mail a été envoyé au webmaster
    Début du script - Avant construire message: 18:16:23
    Après avoir construit Message: 18:16:23
    ATTENTION : désactivation de l'envoi de mail
     
    Debut du script: 18:16:23
    Fin du script: 18:16:44
    Script execute en 21.342 sec

  6. #6
    Membre du Club
    Homme Profil pro
    Cobol sur Mainframe et Unix AIX
    Inscrit en
    Mars 2012
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Cobol sur Mainframe et Unix AIX

    Informations forums :
    Inscription : Mars 2012
    Messages : 196
    Points : 69
    Points
    69
    Par défaut
    Effectivement, la fonction mail n'est pas lente.
    J'ai déployé mon code sur un site internet et c'est rapide :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Erreur 404
     
    Cette page n'existe pas !!!!
     
    Un mail a été envoyé au webmaster
    Debut du script: 05:17:19
    Fin du script: 05:17:19
    Script execute en 0.217 sec
    C'est donc uniquement en local que ça rame.

    Merci pour votre aide.

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

Discussions similaires

  1. [FLASH MX] Problème flash et fonction mail() php
    Par proutcore dans le forum Flash
    Réponses: 7
    Dernier message: 21/05/2007, 12h21
  2. [PHPMailer] la fonction mail et moi !!!
    Par wdionysos dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 27/10/2005, 20h05
  3. Fonction mail avec HTML et images
    Par nico33307 dans le forum Modules
    Réponses: 1
    Dernier message: 05/07/2005, 23h25
  4. Envoi de mail trop lent
    Par MASSAKA dans le forum ASP
    Réponses: 3
    Dernier message: 15/10/2004, 10h57

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