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() envoi url avec paramètre


Sujet :

Langage PHP

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mai 2015
    Messages : 2
    Points : 1
    Points
    1
    Par défaut mail() envoi url avec paramètre
    Bonjour

    J'utilise la fonction mail() pour envoyer un texte plus un lien url vers mon site avec des paramètres.

    lorsque je fais un eco de l'url à envoyé sur le serveur web, l'affichage est correcte: http://localhost/extranet/event_mail...4&id_rep=10511

    par contre quand je reçoit le mail voici le format de l'url: http://localhost/extranet/event_mail.php?id_mu=8&id_event$4&id_rep%10511

    Les deux derniers symboles = sont modifier

    Voici mon 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
    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
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
     
    <?php
    define( '_JEXEC', 1 );
     
    define('JPATH_BASE', $_SERVER["DOCUMENT_ROOT"]);
     
     
    define( 'DS', DIRECTORY_SEPARATOR );
     
    require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
    require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
     
    JDEBUG ? $_PROFILER->mark( 'afterLoad' ) : null;
     
    /**
    * CREATE THE APPLICATION
    *
    * NOTE :
    */
    $mainframe =& JFactory::getApplication('site');
     
    $user =& JFactory::getUser();
     
    if (!$user->guest) {
      //echo 'You are logged in as:<br />';
      //echo 'User name: ' . $user->username . '<br />';
      //echo 'Real name: ' . $user->name . '<br />';
      //echo 'User ID  : ' . $user->id . '<br />';
    $user2 = $user->id ;  
    }
    else
    {
    //  echo "<p>Invité.". $user->id ."</p>";
    }  
    //------------------------------------------------------------------------------
     
    include ("config.php");
    $t_mail=0;
     
     
     
    $ab= mysql_query('SELECT *FROM log_evenements where id_event='.$_POST['det']);
    $ba = mysql_fetch_array($ab);
     
    $sujet1=$ba['event'];
     
    $hb= mysql_query('SELECT *FROM log_config where log_conf_id=1');
    $bh = mysql_fetch_array($hb);
     
    $sujet2=$bh['log_conf_valeur'];
     
    $sujet .= $sujet2;
    $sujet .=' ';
    $sujet .= $sujet1;
     
    $cot22= mysql_query('SELECT *FROM log_result_event where id_event='.$_POST['det']);
     
    while($cot23 = mysql_fetch_array($cot22)){
     
    if($cot23['valid']==0){
     
    $select5 = mysql_query('SELECT *FROM musicos2 where id_mu='.$cot23['id_mu']); 
    $select6 = mysql_fetch_array($select5);
     
    $_POST['id_rep'] = $cot23['id_result'];
     
    $destinataire = $select6['mail1'];
    $prenom = $select6['prenom'];
    $texte5='Merci de répondre le plus rapidement possible à ce sondage en cliquant sur le lien ci-dessous.';
    $mu=$select6['id_mu'];
    $select6['id_mu']=$mu;
     
    $param_url='id_mu='.urlencode($mu).'&id_event='.urlencode($_POST['det']).'&id_rep='.urlencode($_POST['id_rep']);
    echo $param_url;
     
    $insc='<a href="'.$url_site.'/'.$rep.'/event_mail.php?'.$param_url .'">---> Répondre au sondage.';
     
    // on génère une chaîne de caractères aléatoire qui sera utilisée comme frontière
    $boundary = "-----=" . md5( uniqid ( rand() ) );
     
     $headers = "From: <a href="mailto:contact@musiquenoizay.fr">contact@musiquenoizay.fr</a>\r\nReply-To: <a href="mailto:contact@musiquenoizay.fr">contact@musiquenoizay.fr</a>\r\n";
     $headers .= "MIME-Version: 1.0\n";
     $headers .= "Content-Type: multipart/alternative; boundary=\"$boundary\"";
     
                    $msg .= "Bonjour $prenom";
                    $msg .= "<br>";
                    $msg .= "$texte5";
                    $msg .= "<br>";
                    $msg .= "L'équipe Web";
                    $msg .= "<br>";
                    $msg .= "<br>";
                    $msg .= "$insc\n";
                    $msg .= "\n";
     
                    $message_html  = "Bonjour $prenom";
                    $message_html .= "<br>";
                    $message_html .= "$texte5";
                    $message_html .= "<br>";
                    $message_html .= "L'équipe Web";
                    $message_html .="<br>";
        $message_html .="<br>";
                    $message_html .= "$insc\n";
                    $message_html .="<br>";
                    $message_html .="<br>";
                    $message_html .= "\n";
     
     
      $message .= "--" . $boundary . "\n";
      $message .= "Content-Type: text/html; charset=\"iso-8859-1\"\n";
      $message .= "Content-Transfer-Encoding: quoted-printable\n\n";
      $message .= $message_html;
      $message .= "\n\n";
      $message .= "--" . $boundary . "--\n";
     
      //send the email
    $mail_sent = @mail( $destinataire, $sujet, $message, $headers);
    echo $mail_sent ? "Mail sent" : "Mail failed";
     
    $t_mail=$t_mail+1;
     
    }}
     
    $id_event=$_POST['det'];$date=date('Y-m-d');
    mysql_query("INSERT INTO log_event_rappel VALUES('','" . $id_event . "','" . $date . "')");
    $_POST['mail']=$t_mail;
     
    header('Location: agenda_presence_site.php?list=1&mail=' . $_POST['mail'].'&tri=1&det=' . $_POST['det']);
    Je vous remercie d'avance de votre aide.

  2. #2
    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
    Ce serait peut-être une bonne idée de construire ton url avec http_​build_​query au lieu d'enchainer les urlencode :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $param_url = http_build_query(array('id_mu' => $mu, 'id_event' => $_POST['det'], 'id_rep' => $_POST['id_rep']));
    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]

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mai 2015
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Bonjour

    Merci pour ton aide, mais le test n'est pas concluant, toujours le même format dans l'url. ce ne serait pas une sécurité lors de l'envoi du mail qui modifierai le contenu de l'URL ?

Discussions similaires

  1. Post url avec paramètre
    Par rafikindia dans le forum Services Web
    Réponses: 2
    Dernier message: 11/01/2010, 12h15
  2. [Mail] Envoi email avec image
    Par feldene dans le forum Langage
    Réponses: 1
    Dernier message: 15/07/2009, 09h15
  3. Réponses: 1
    Dernier message: 23/06/2009, 19h35
  4. [Mail] Envoi multiple avec phpmailer
    Par gtraxx dans le forum Langage
    Réponses: 15
    Dernier message: 01/09/2008, 20h59
  5. [Mail] Envoi email avec php
    Par laymounos dans le forum Langage
    Réponses: 8
    Dernier message: 01/06/2006, 14h31

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