[php]mail()

Bonjour,
je me demande comment on peut s'assurer d'envoyer un mail prés une date une seule fois x)
Configuration: Windows XP
Firefox 3.0.5

4 réponses

  1. Il faut que tu rajoutes ceci :

    <?php
    $headers ='From: "ton nom"<ton adresse mail>'."\n";
    $headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
    $headers .='Content-Transfer-Encoding: 8bit';

    $message ="Ton message";

    if(mail('adresse mail du destinataire', 'Titre du mail', $message, $headers))
    {
    echo 'Le message a été envoyé';
    }
    else
    {
    echo 'Le message n\'a pu être envoyé';
    }
    ?>

    Voilà
    1. merci pour la réponse , mais mon problème est :
      j'ai par exemple une date 2/2/2009 je veux envoyer l'email aprés cette date mais juste une seule fois ,pas a chaque exécution de mapage.php je pense que je dois ajouter une table dans la base donnée x)
      1. Ce que tu dois faire, c'est dire : si nous sommes le 2/2/2009, alors on envoie l'e-mail.

        Comme ceci :

        <?php $jour = date('d');
        $mois = date('m');
        $annee = date('Y');

        if($jour = "02" && $mois = "02" && $annee = "2009")
        {
        $headers ='From: "ton nom"<ton adresse mail>'."\n";
        $headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
        $headers .='Content-Transfer-Encoding: 8bit';

        $message ="Ton message";

        if(mail('adresse mail du destinataire', 'Titre du mail', $message, $headers))
        {
        echo 'Le message a été envoyé';
        }
        else
        {
        echo 'Le message n\'a pu être envoyé';
        }
        }
        ?>

        Par contre, il faut mettre une heure précise pour ne pas l'envoyer toute la journée. Dans ce cas il faut mettre :

        <?php $jour = date('d');
        $mois = date('m');
        $annee = date('Y');
        $heure = date('H');
        $minute = date('i');
        $seconde = date('s');

        if($jour = "02" && $mois = "02" && $annee = "2009" && $heure = "12" && $minute = "00" && $seconde = "00")
        {
        $headers ='From: "ton nom"<ton adresse mail>'."\n";
        $headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
        $headers .='Content-Transfer-Encoding: 8bit';

        $message ="Ton message";

        if(mail('adresse mail du destinataire', 'Titre du mail', $message, $headers))
        {
        echo 'Le message a été envoyé';
        }
        else
        {
        echo 'Le message n\'a pu être envoyé';
        }
        }
        ?>
        Ce qui fait que l'e-mail sera envoyé le 02 février 2009 à midi !

        Voilà
        1. si personne n 'a exécuter cette page a cette heures là x) ou bien plusieurs exécution , j'ajouterais un booléen dans la base donnée ahhh merci fréro :)