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 :

Ouvrir URL avec PHP


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Inscrit en
    Mai 2004
    Messages
    378
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 378
    Points : 120
    Points
    120
    Par défaut Ouvrir URL avec PHP
    Bonjour,
    J'utilise ce code pour envoyer des email
    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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    <?php
    /* Si le formulaire est envoyé alors on fait les traitements */
    if (isset($_POST['envoye']))
    {
        /* Récupération des valeurs des champs du formulaire */
        if (get_magic_quotes_gpc())
        {
          $civilite		= stripslashes(trim($_POST['civilite']));
          $nom	     	= stripslashes(trim($_POST['nom']));
          $expediteur	= stripslashes(trim($_POST['email']));
          $url	= stripslashes(trim($_POST['url']));
          $sujet		= stripslashes(trim($_POST['sujet']));
          $message		= stripslashes(trim($_POST['message']));
          $tel		= stripslashes(trim($_POST['tel']));  
        }
        else
        {
          $civilite		= trim($_POST['civilite']);
          $nom		= trim($_POST['nom']);
          $expediteur	= trim($_POST['email']);
    	  $url	= trim($_POST['url']);
          $sujet		= trim($_POST['sujet']);
          $message		= trim($_POST['message']);
          $tel	        = trim($_POST['tel']);
        }
     
        /* Expression régulière permettant de vérifier si le 
        * format d'une adresse e-mail est correct */
        $regex_mail = '/^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i';
     
        /* Expression régulière permettant de vérifier qu'aucun 
        * en-tête n'est inséré dans nos champs */
        $regex_head = '/[\n\r]/';
     
        /* Si le formulaire n'est pas posté de notre site on renvoie 
        * vers la page d'accueil */
        if($_SERVER['HTTP_REFERER'] != 'http://www.monsite.com/contact.php')
        {
          header('Location: http://www.monsite.com/');
        }
        /* On vérifie que tous les champs sont remplis */
        elseif (empty($civilite) 
               || empty($nom)  
               || empty($sujet)
               || empty($tel)  
               || empty($url)  
               || empty($message))
        {
          $alert = 'Tous les champs doivent être renseignés';
        }
        /* On vérifie que le format de l'e-mail est correct */
        elseif (!preg_match($regex_mail, $expediteur))
        {
          $alert = 'L\'adresse '.$email.' n\'est pas valide';
        }
        /* On vérifie qu'il n'y a aucun header dans les champs */
        elseif (preg_match($regex_head, $email) 
                || preg_match($regex_head, $nom) 
                || preg_match($regex_head, $sujet))
        {
            $alert = 'En-têtes interdites dans les champs du formulaire';
        }
        /* Si aucun problème et aucun cookie créé, on construit le message et on envoie l'e-mail */
        elseif (!isset($_COOKIE['sent']))
        {
            /* Destinataire (votre adresse e-mail) */
            $to = 'xxxx@yahoo.fr';
     
            /* Construction du message */
            $msg  = 'Bonjour,'."\r\n\r\n";
            $msg .= 'Ce mail a été envoyé depuis monsite.com par '.$civilite.' '.$nom."\r\n\r\n";
            $msg .= 'Sujet '.$sujet."\r\n";
            $msg .= 'URL '.$url."\r\n";
            $msg .= 'Tél ' .$tel."\r\n";   
            $msg .= 'Voici le message qui vous est adressé :'."\r\n";
            $msg .= '***************************'."\r\n";
            $msg .= $message."\r\n";
            $msg .= '***************************'."\r\n";
     
            /* En-têtes de l'e-mail */
            $headers = 'From: '.$nom.' <'.$expediteur.'>'."\r\n\r\n";
     
            /* Envoi de l'e-mail */
            if (mail($to, $sujet, $msg, $headers))
            {
    			$alert = 'E-mail envoyé avec succès';
     
                /* On créé un cookie de courte durée (ici 120 secondes) pour éviter de 
                * renvoyer un mail en rafraichissant la page */
                setcookie("sent", "1", time() + 120);
     
                /* On détruit la variable $_POST */
                unset($_POST);
            }
            else
            {
                $alert = 'Erreur d\'envoi de l\'e-mail';
            }
     
        }
        /* Cas où le cookie est créé et que la page est rafraichie, on détruit la variable $_POST */
        else
        {
            unset($_POST);
        }
    }
    ?>
    et je veux apres l'envoi de l'email une autre page qui s'ouvre automatiquement, comment je peux faire ca? merci

  2. #2
    Membre expert
    Avatar de s.n.a.f.u
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2006
    Messages
    2 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2006
    Messages : 2 760
    Points : 3 545
    Points
    3 545
    Par défaut
    Salut,

    C'est une redirection, non ?

    Tu peux regarder le manuel de header, sans oublier les ressources de cet excellent site : http://php.developpez.com/faq/?page=...ts_redirection

    --- edit ---
    Je n'avais pas lu tout ton code. Il s'avère que tu utilises déjà header. Quelque chose m'échappe...

  3. #3
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 275
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 275
    Points : 8 580
    Points
    8 580
    Billets dans le blog
    17
    Par défaut
    Faudrait mettre un header('Location: taNouvellePage.php') après l'envoi du mail.

  4. #4
    Membre régulier
    Inscrit en
    Mai 2004
    Messages
    378
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 378
    Points : 120
    Points
    120
    Par défaut
    Merci infiniment

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

Discussions similaires

  1. [XML] Récupérer les données d'un fichier XML sur URL avec php
    Par ValooWart dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 01/03/2013, 17h40
  2. [MySQL] probléme d'url avec php
    Par tycoons dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 08/02/2010, 18h14
  3. [Excel] Ouvrir un document avec php
    Par mat-tech dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 26/04/2006, 13h28
  4. ouvrir une popup avec php
    Par Defrancesco dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 15/10/2005, 11h34

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