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 :

[Mail] utilisation de la fonction mail en php


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2005
    Messages
    288
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 288
    Points : 76
    Points
    76
    Par défaut [Mail] utilisation de la fonction mail en php
    Bonjour bonjour !

    J'ai un petit problème avec l'utilisation de la fonction mail en php...

    Je vous explique rapidement :
    - depuis index.php, je charge une page appelée contact.php, contenant un formulaire,
    - le formulaire appelle un fichier /contact/envoi_mail.php
    - dans ce fichier, je fais différents test sur mon formulaire, en utilisant les sessions pour pouvoir afficher d'éventuels messages d'erreur dans la page appelante (contact.php)

    Voici le code :
    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
     <?php
     
     session_start();
     
    ...................
     
    if( $nom=="" || $email=="" || $sujet=="" || $contenu=="" || $temp=="")
    {
    	$_SESSION['erreur'] = "Tous les champs doivent être renseignés !";
    }
    else
    {
    	if($test_mail[0]=="" || $test_mail[1]=="" || $retest_mail[1]=="")
    	{
    		$_SESSION['erreur'] = "L'adresse email renseignée est erronée !";
    	}
    	else
    	{
    		if(chk_crypt($_POST['code']))
    		{
    			$envoi_mail = mail("prout@yahoo.fr", $sujet, $contenu, $headers);
     
    			if (!$envoi_mail)
    			{
    				$_SESSION['erreur'] = "Votre message n'a pas &eacute;t&eacute; envoy&eacute; car un probl&egrave;me est survenu..." ;
    			}
    			else
    			{
     
    				$_SESSION['erreur'] = "Votre message a &eacute;t&eacute; envoy&eacute; avec succ&egrave;s&nbsp;!" ;
    			}
    		}
    		else
    		{
    			$_SESSION['erreur'] = "Le cryptogramme n'est pas valide !" ;
    		}
    	}
    }
     
    header("Location: .../contact.php");
     
     
    ?>
    A noter que j'utilise un cryptogramme, d'où le test
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(chk_crypt($_POST['code']))
    Mon problème est que lorsque l'instruction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $envoi_mail = mail("prout@yahoo.fr", $sujet, $contenu, $headers);
    est exécutée, une page blanche s'affiche (/contact/envoi_mail.php dans la barre d'adresse).

    Si je fais précédent, je reviens sur la page contact.php, et il y a bien écrit si oui ou non le mail a été envoyé...

    Je souhaiterais donc pouvoir éviter l'ouverture de cette page blanche.

    Merci d'avance pour votre aide et bonne journée
    Juan

  2. #2
    Membre chevronné Avatar de Er3van
    Homme Profil pro
    Architecte Logiciel
    Inscrit en
    Avril 2008
    Messages
    1 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte Logiciel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 430
    Points : 2 227
    Points
    2 227
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header("Location: .../contact.php");
    Et si c'était simplement ça qui n'était pas bon ?

    Plutôt "../contact.php" non ?
    One minute was enough, Tyler said, a person had to work hard for it, but a minute of perfection was worth the effort. A moment was the most you could ever expect from perfection.

    -- Chuck Palahniuk, Fight Club, Chapter 3 --

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2005
    Messages
    288
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 288
    Points : 76
    Points
    76
    Par défaut
    Salut Er3van !

    Roh j'y ai cru... ça m'aurait pas étonné que ce soit une connerie dans le genre !!

    Malheureusement après modification, aucun changement :S
    Juan

  4. #4
    Membre confirmé

    Homme Profil pro
    Inscrit en
    Août 2006
    Messages
    317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2006
    Messages : 317
    Points : 597
    Points
    597
    Par défaut
    Essaie une redirection html au lieu d'une redirection php. Il est possible que l'envoie de mail soit considéré comme un envoi html avec deja un header, dans ce cas, la fonction header de php est inutilisable

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Février 2005
    Messages
    288
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 288
    Points : 76
    Points
    76
    Par défaut
    Salut Phelim !

    Et bien écoute je n'y avait pas pensé, mais c'est une solution...

    J'ai finalement mis du html dans envoi_mail.php, de façon à afficher un message du genre "Traitement en cours...", et dans head, j'ai ajouter le code pour faire une redirection vers contact.php

    Ca marche nikel !

    Merci beaucoup !
    Juan

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

Discussions similaires

  1. [Mail] Utilisation de la fonction "mail"
    Par pedatic dans le forum Langage
    Réponses: 7
    Dernier message: 20/01/2009, 21h19
  2. [Mail] Utilisation de la fonction "mail"
    Par _rara_ dans le forum Langage
    Réponses: 7
    Dernier message: 11/11/2008, 11h32
  3. [Mail] Utilisation de la fonction mail
    Par arkandias dans le forum Langage
    Réponses: 3
    Dernier message: 23/09/2008, 08h15
  4. [Mail] Utilisation de la fonction mail
    Par Shivaneth dans le forum Langage
    Réponses: 1
    Dernier message: 21/06/2007, 13h42
  5. [Mail] Utilisation de la fonction mail()
    Par NeuroGen dans le forum Langage
    Réponses: 4
    Dernier message: 11/07/2006, 20h33

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