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] Send Mail + lien


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Points : 8
    Points
    8
    Par défaut [Mail] Send Mail + lien
    Bonjour à tout le monde,

    Voila je n'arrive pas à envoyer un mail depuis un lien hypertexte:

    La fonction send_mail est celle de MyPHPAnnuaire
    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
     
    function send_mail($emailto,$sujet,$corps,$emailfrom,$priority=3)
    //envoi un email a un visiteur
    {
    	global $email_master,$nom_site;
     
    	$corps = $corps;
     
    	if ($emailto  == $email_master)
    	//envoi du mail au webmaster
    		$to = "$nom_site<$email_master>";
    	else
    	{
    		$to = "$emailto";
    	}
    	if ($emailfrom == $email_master)
    		$from = "From: $nom_site<$email_master>\nReply-To: $email_master\n";
    	else
    	{ $from = "From: $emailfrom\nReply-To: $emailfrom\n"; }
     
    	$options = $from;
    	$options .= "X-Priority: $priority\n";
    	//envoi du mail
    	return @mail($to,$sujet,$corps,$options);
    	}
    Donc pour tester j'ai fait ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <?php
    $email_proprio ="#";
    $email_master ="#";
    $message_vis = "blablabla";
    ?>	
     
    <a onclick="send_mail($email_proprio,"Proposition de site dans l'annuaire",htmlspecialchars($message_vis),$email_master)" href="#" >Mail</a>
    Cela ne fonctionne pas?
    Ais je loupé une étape?

    Merci à l'avance pour votre aide précieuse

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Mon soucis vient du onclick, car si je mets la fonction sur une page et que j'appele cette dernière, cela fonctionne ? pourquoi donc ?

  3. #3
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Parce que tu mélanges les torchons et les serviettes.

    PHP == serveur
    HTML, Javascript == client

    La seul chose que peut faire depuis un client sur le serveur, c'est une requete HTTP. En aucun cas tu peux executer une fonction php depuis un code javascript.

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    ok je vois

    Donc ma question serait:

    Comment lancer une fonction php, a partir d'un bouton?, d'un lien ou autre?

    Merci d'avance
    Cinc

  5. #5
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Tu as répondu toi même à ta question deux messages plus haut
    Il te suffit de mettre l'appel à la fonction dans une page php par exemple envoyer_mail.php :
    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
     
    <?php
    function send_mail($emailto,$sujet,$corps,$emailfrom,$priority=3)
    //envoi un email a un visiteur
    {
    	global $email_master,$nom_site;
     
    	$corps = $corps;
     
    	if ($emailto  == $email_master)
    	//envoi du mail au webmaster
    		$to = "$nom_site<$email_master>";
    	else
    	{
    		$to = "$emailto";
    	}
    	if ($emailfrom == $email_master)
    		$from = "From: $nom_site<$email_master>\nReply-To: $email_master\n";
    	else
    	{ $from = "From: $emailfrom\nReply-To: $emailfrom\n"; }
     
    	$options = $from;
    	$options .= "X-Priority: $priority\n";
    	//envoi du mail
    	return @mail($to,$sujet,$corps,$options);
    }
     
    $email_proprio ="#";
    $email_master ="#";
    $message_vis = "blablabla";
     
    send_mail($email_proprio,"Proposition de site dans l'annuaire",htmlspecialchars($message_vis),$email_master);
     
    ?>
    Et pour tester il te suffit de créer une autre page par exemple index.html :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="envoyer_mail.php">Envoyer le mail</a>

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Enfait je suis allé trop vite...
    C'est vrai que j'ai la réponse a ma première question, mais en fait ce que je voulais te demander c'est comment faire un passage de variable entre deux pages.

    Cad:

    Sur la page 1 j'ai la connexion a la bdd, je collecte le @ à qui va être envoyé le mail, et je l'envoie sur la page 2, comme vu plus haut.

    Comment se fait le passage de variable entre page1 et page2?

    Cinc

  7. #7
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Ouch. Visiblement, tu as du sauter quelques étapes dans les cours...
    On passe des paramètres de la manière suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    envoyer_mail.php?destinataire=Marc&sujet=Trop%20cool
    Alors, dans le script envoyer_mail.php on obtient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $_GET['destinataire'] ==> 'Marc' 
    et
    $_GET['sujet'] ==> 'Trop cool'

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Points : 8
    Points
    8
    Par défaut


    IMPARDONNABLE...

    c'est que je suis plus déssin que prog

    Merci de ta rapidité

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Désolé mais je n'arrive pas à récupérer mes variables
    Il n'y a pas des restriction serveur? Il ne faut pas utiliser quelque chose d'autre que seulement $email_proprio =$_GET['email_proprio']; ??
    Il me semble que j'avais eu ce soucis déja?

  10. #10
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    fais voir tes codes

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2005
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Page 1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <?php	
    $destinataire=$a_site["email_proprio"]; 
    echo $destinataire;  // ça affiche bien le mail
    ?>
     
    <a href="test-email-2.php?$email_proprio=$destinataire" target="_blank">mail</a>
     
    ---- test-email-2 -----
     
    $email_proprio2 =$_GET['$email_proprio'];
    echo $email_proprio2; // il m'affiche '$destinataire'

  12. #12
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    à partir du moment ou tu sors de <?php ?>, tu ne peux plus utiliser les variables php à moins de rerentrer dans un bloc php. Ainsi soit tu fais comme çi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    $destinataire=$a_site["email_proprio"];
    echo $destinataire; // ça affiche bien le mail
    ?><a href="test-email-2.php?email_proprio=<?php echo $destinataire; ?>" target="_blank">mail</a>
    Soit comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $destinataire=$a_site["email_proprio"];
    echo $destinataire; // ça affiche bien le mail
    echo '<a href="test-email-2.php?email_proprio=' . $destinataire .'" target="_blank">mail</a>';
    ?>

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

Discussions similaires

  1. [Mail] Fonction mail et balise lien (a href)
    Par Zyxon dans le forum Langage
    Réponses: 4
    Dernier message: 29/06/2009, 17h58
  2. Réponses: 3
    Dernier message: 19/03/2009, 19h21
  3. [Mail] send mail, php fusion, wamp
    Par neecride dans le forum Langage
    Réponses: 4
    Dernier message: 07/02/2009, 21h32
  4. Send mail / SMTP
    Par malmzi2007 dans le forum Zope
    Réponses: 8
    Dernier message: 28/07/2006, 07h57
  5. [Mail] envoi d'un mail contenant un lien
    Par phpaide dans le forum Langage
    Réponses: 2
    Dernier message: 05/07/2006, 11h31

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